{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "_id": "FDCA025F718B4FC498E8A5BBE44A6E43",
    "id": "6ABB84B5711B485A85153F0672F39C82",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    " # <center>Lecture 2: Bayes' Rule  </center>  \n",
    " \n",
    " ## <center> Instructor: Dr. Hu Chuan-Peng  </center>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "_id": "9B23E8F257D24245B035991344E14DE8",
    "id": "96AB044AAC6249FF9CD5F829283E3365",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## Part 1: 【和鲸平台】整合教学+练习"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d8ac39a9",
   "metadata": {
    "_id": "CBD7BE6CEACC42E3AF2D5C273FF36CB9",
    "id": "22AFE2A00FEA42ED927B4B834A5DF848",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "本学期的贝叶斯课程将通过和鲸平台进行授课与代码练习，请大家提前注册好和鲸平台的账号。  \n",
    "\n",
    "关于和鲸平台的运行环境设置说明如下：  \n",
    "\n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/1757570640505_1.png?imageView2/0/w/640/h/640)  \n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/1757570690953_2.png?imageView2/0/w/640/h/640)  \n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2dfd128e",
   "metadata": {
    "_id": "24FAE016A55E44179F8054656732F0B1",
    "id": "CD5E671E908B44808113E21ADCD41752",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "更重要的是：任何问题都可以微信群里发帖提问。  \n",
    "\n",
    "助教和老师会尽快回复的 🚀。  \n",
    "\n",
    "当然，你也可以选择在gitee上进行提问。  \n",
    "点击链接访问gitee：  \n",
    "[https://gitee.com/hcp4715/PyBayesian](https://gitee.com/hcp4715/PyBayesian)  \n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/1757570810462_1.png?imageView2/0/w/960/h/960)  \n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e6ceb846",
   "metadata": {
    "_id": "959962DB732A4DB59441904EFB17C296",
    "id": "412A30366C1849BD8E8ADC64D0AB1D17",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    " ## Part 2: 单一事件的贝叶斯模型"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "258bca79",
   "metadata": {
    "_id": "3B3A1C3022C74C848C83413419C2C33F",
    "id": "D5FEE1983C0948CC8EAF12E902FBF79A",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 基本概念回顾  \n",
    "\n",
    "**试验**  \n",
    "**事件**  \n",
    "**总体**  \n",
    "**概率**  \n",
    "**加法原则**  \n",
    "**乘法原则**  \n",
    "\n",
    "https://www.bilibili.com/video/BV1B7411v73M/?p=14  \n",
    "https://www.bilibili.com/video/BV1B7411v73M/?p=15  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f908140d",
   "metadata": {
    "_id": "97A69A3273D64E7AA2D2CC8C6977E4B9",
    "id": "E679CCEF9B38458480C4CD27BBEBD1F7",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### **“从一个心理学研究的*事件*开始”**  \n",
    "\n",
    "读文献时，大家是否有一个疑问：我看到的这个文章靠谱吗？  \n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjpbvjqzx2.jpg?imageView2/0/w/640/h/640)  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "85bcd525",
   "metadata": {
    "_id": "2E3BD9AE42324A669E83F4E27A2D3047",
    "id": "375C09E9793E453CA818850F0904F1BF",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "2015年，**开放科学合作组织（Open Science Collaboration）** 在《Science》杂志上发表文章，发现只有**36%～47%** 的认知/社会心理学研究成果能被成功重复。  \n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjos6fmkbs.png?imageView2/0/w/960/h/960)  \n",
    "\n",
    "\n",
    "> Open Science Collaboration (2015), Estimating the reproducibility of psychological science. *Science*, 349, aac4716. DOI:10.1126/science.aac4716"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5e8ee9e2",
   "metadata": {
    "_id": "927FC0DD195D47A09AFCAFEECAA90F9E",
    "id": "F23FEAE96B60472F937578D34898E971",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "以这个论文为代表的系列讨论，引发了关于心理学“可重复性危机”的讨论[(胡传鹏等, 2018)](https://journal.psych.ac.cn/xlkxjz/CN/10.3724/SP.J.1042.2016.01504)。  \n",
    "\n",
    "知道这个事实之后，对我们看到的下一篇文章时的信念是否产生了影响？  \n",
    "\n",
    "假设我们认同*Science*这个文章的结论，初步认为大约**40%** 的心理学实验是可重复的。我们以这个数据作为我们对文章的初步“信念”。  \n",
    "\n",
    "新的关于心理学研究可重复性的研究是否会进一步改变我们的信念？"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "964e82f8",
   "metadata": {
    "id": "A9FBA87F1D594979999CCF371F6E2490",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "用公式化的表述：  \n",
    "\n",
    "**事件**：某个心理学研究的结论结果可重复出来。其概率可以写为: $P(Exp_{可重复})$ [$P(可重复)$ = 0.4]  \n",
    "**全部结果**: ...可重复；不可重复。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "02be86a8",
   "metadata": {
    "_id": "A17CA82F36AF4B1B9D9D426183B62303",
    "id": "0BC456D4F7904C8486A5B70652288FAE",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "2024年，一项针对299项预注册的重复实验数据的研究发现，可重复研究通常以自信、透明和确切的语言撰写，而不可重复的研究则往往表现出模糊性，并使用“边缘型”的说服技巧。  \n",
    "\n",
    "这个新研究是否会**改变**我们对心理学科学论文结论可重复性的信念？  \n",
    "\n",
    "假定我们现在从上述299个文章中抽取出一篇论文，我们会如何评估它的可重复性？  \n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjoly6dhft.png?imageView2/0/w/960/h/960)  \n",
    "\n",
    "\n",
    "> Herzenstein, M., Rosario, S., Oblander, S., & Netzer, O. (2024). The language of (non)replicable social science. Psychological Science, 9567976241254037. https://doi.org/10.1177/09567976241254037  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "80191548",
   "metadata": {
    "_id": "0431DA1DBB18442E8023EB69490F4AB1",
    "id": "1481A4984A7D45F283060D96845BAB6D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "基于我们对心理学研究可重复性的原有信念（即认为大约40%的研究可以重复）和新证据（可重复性研究更多使用**确切语言**撰写），当我们随机抽取一项研究并获知其语言风格后，会对其可重复性持何种信念呢？  \n",
    "\n",
    "假如我们仅根据*Science 2015*的研究结果，我们可能会认为这项研究大约有40%可能性被重复出来？但是这意味着Herzenstein 等(2024)新研究的信息没有被用上。  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "27b1ff5b",
   "metadata": {
    "_id": "8276AE623A8941DD95D88D69E9C128F5",
    "id": "3799CB45AE5D4354AD66174A2930DAE7",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "根据Herzenstein 等(2024)的研究结果，可重复的研究中，有56%的文章使用确切的语言风格；在不可重复的研究中，使用确切语言的比例为为45%。  \n",
    "\n",
    "根据这些信息，且将这两项研究的结果当作我们推断的基础，我们可推断出以下几个关键信息：  \n",
    "- 心理学研究可重复的概率为40%  \n",
    "- 心理学研究不可重复的概率为60%  \n",
    "- 可重复的研究中，使用确切语言的概率为56%  \n",
    "- 不可重复的研究中，使用确切语言的概率为45%  \n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjoxpj2ivv.png?imageView2/0/w/640/h/640)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c584de5c",
   "metadata": {
    "_id": "21789174E0044E24B1CA5DDC803C1D4F",
    "id": "9B67D1D9F675499E9BCA494B17DDE20C",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "根据上述信息，现在我们可以进行以下的简单的运算：  \n",
    "\n",
    "- 研究可重复且使用确切语言的概率 $P = 0.40 \\times 0.56 = 0.224$  \n",
    "- 研究可重复但不使用确切语言的概率 $P= 0.40 * (1-0.56) = 0.176$  \n",
    "- 研究不可重复但使用确切语言的概率 $P= 0.60 * 0.45 = 0.27$  \n",
    "- 研究不可重复且不使用确切语言的概率 $P= 0.60 * (1-0.45) = 0.33$  \n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjp0bqwjgl.png?imageView2/0/w/960/h/960)  \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "748deea0",
   "metadata": {
    "_id": "9A966B81FDF3433B90DB37EEA7449D65",
    "id": "6FC44845E59F483B88B167D736397BB8",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "假如我们抽取出一个文章使用了确切的语言风格，我们认为它可重复的可能性是多少呢？  \n",
    "\n",
    "$P(可重复|使用确切语言) = 0.224/(0.224 + 0.27) = 0.453$  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bbb2d194",
   "metadata": {
    "_id": "7B86ECDD3D8C4CF4BC570379B7B8D4E0",
    "id": "EDC7D47C542A40E3B83A677036F7B53A",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "在这个简单的例子当中，我们进行了一次“贝叶斯的证据更新”。  \n",
    "\n",
    "接下来我们再来重新审视一下这个事例。  \n",
    "\n",
    "我们选取Herzenstein 等(2024)年的部分真实数据进行探索，包括研究的编号 (title)，文章是否可被重复 (replicated), 文章结果描述的确切性 (certain)和文章表述的积极性 (posemo)。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "488354bb",
   "metadata": {
    "_id": "5E2EC868AAD6488CA5E5DFADCF965A1A",
    "collapsed": true,
    "id": "54B38C69448641E49279F17C19292C89",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Updating HTML index of packages in '.Library'\n",
      "\n",
      "Making 'packages.html' ...\n",
      " done\n",
      "\n",
      "also installing the dependencies ‘tinylabels’, ‘bookdown’, ‘rmdfiltr’\n",
      "\n",
      "\n",
      "Updating HTML index of packages in '.Library'\n",
      "\n",
      "Making 'packages.html' ...\n",
      " done\n",
      "\n",
      "\n",
      "papaja installed\n",
      "\n"
     ]
    }
   ],
   "source": [
    "# 安装和加载包\n",
    "options(repos = c(CRAN = \"https://mirrors.tuna.tsinghua.edu.cn/CRAN/\"))\n",
    "if (!requireNamespace('pacman', quietly = TRUE)) {\n",
    "    install.packages('pacman')\n",
    "}\n",
    "pacman::p_load(\"tidyverse\", \"papaja\")\n",
    "options(warn = -1)  # 抑制警告"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "6a99be3f",
   "metadata": {
    "collapsed": false,
    "id": "C5AD8EE1587F41DF91258B95C9E2F5E6",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "#导入数据\n",
    "df <- tryCatch({\n",
    "  read.csv('/home/mw/input/bayes3797/replicated_language_cleaned.csv') #平台路径\n",
    "}, error = function(e) {\n",
    "  read.csv('/Users/liumingyu/Desktop/1/PyBayesian/data/replicated_language_cleaned.csv') #本地路径\n",
    "})\n",
    "\n",
    "#整理数据（删除特定列）\n",
    "df <- df %>% select(-study_name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "4a455cce",
   "metadata": {
    "_id": "7220F66CE63E4264AD38AC5B6A7C50A3",
    "collapsed": false,
    "id": "A6EE537D80F74E289B394C6C8B1856EA",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"dataframe\">\n",
       "<caption>A data.frame: 6 × 4</caption>\n",
       "<thead>\n",
       "\t<tr><th></th><th scope=col>study_id</th><th scope=col>replicated</th><th scope=col>posemo</th><th scope=col>certain</th></tr>\n",
       "\t<tr><th></th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;dbl&gt;</th></tr>\n",
       "</thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>1</th><td>1</td><td>1</td><td>1.36</td><td>1.75</td></tr>\n",
       "\t<tr><th scope=row>2</th><td>3</td><td>0</td><td>1.92</td><td>1.17</td></tr>\n",
       "\t<tr><th scope=row>3</th><td>4</td><td>1</td><td>1.41</td><td>1.36</td></tr>\n",
       "\t<tr><th scope=row>4</th><td>5</td><td>0</td><td>1.85</td><td>0.69</td></tr>\n",
       "\t<tr><th scope=row>5</th><td>6</td><td>0</td><td>0.63</td><td>0.72</td></tr>\n",
       "\t<tr><th scope=row>6</th><td>7</td><td>0</td><td>1.26</td><td>0.77</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "A data.frame: 6 × 4\n",
       "\\begin{tabular}{r|llll}\n",
       "  & study\\_id & replicated & posemo & certain\\\\\n",
       "  & <chr> & <dbl> & <dbl> & <dbl>\\\\\n",
       "\\hline\n",
       "\t1 & 1 & 1 & 1.36 & 1.75\\\\\n",
       "\t2 & 3 & 0 & 1.92 & 1.17\\\\\n",
       "\t3 & 4 & 1 & 1.41 & 1.36\\\\\n",
       "\t4 & 5 & 0 & 1.85 & 0.69\\\\\n",
       "\t5 & 6 & 0 & 0.63 & 0.72\\\\\n",
       "\t6 & 7 & 0 & 1.26 & 0.77\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "A data.frame: 6 × 4\n",
       "\n",
       "| <!--/--> | study_id &lt;chr&gt; | replicated &lt;dbl&gt; | posemo &lt;dbl&gt; | certain &lt;dbl&gt; |\n",
       "|---|---|---|---|---|\n",
       "| 1 | 1 | 1 | 1.36 | 1.75 |\n",
       "| 2 | 3 | 0 | 1.92 | 1.17 |\n",
       "| 3 | 4 | 1 | 1.41 | 1.36 |\n",
       "| 4 | 5 | 0 | 1.85 | 0.69 |\n",
       "| 5 | 6 | 0 | 0.63 | 0.72 |\n",
       "| 6 | 7 | 0 | 1.26 | 0.77 |\n",
       "\n"
      ],
      "text/plain": [
       "  study_id replicated posemo certain\n",
       "1 1        1          1.36   1.75   \n",
       "2 3        0          1.92   1.17   \n",
       "3 4        1          1.41   1.36   \n",
       "4 5        0          1.85   0.69   \n",
       "5 6        0          0.63   0.72   \n",
       "6 7        0          1.26   0.77   "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "head(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9e2e20a2",
   "metadata": {
    "_id": "D1AB055B5890484881A9BA656B67D054",
    "id": "BE9B50F3690743A19CABC56486034A1D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 先验 (prior) 和 数据 (data)  \n",
    "\n",
    "重新回顾这里关心的*事件*：从299项心理学研究中随机选出来的一项研究的可重复性如何？  \n",
    "\n",
    "在评估这个事件之前，我们知道Science于2015年发表了一个大规模重复实验，发现40%的心理学研究是可以被重复出来。  \n",
    "\n",
    "对于即将评估的299项研究，它们有不同的语言风格："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "25a81cba",
   "metadata": {
    "_id": "69527C9D804D4A6B931487113C2E71BF",
    "collapsed": false,
    "id": "868683DC6C6A41FF983B74F4ED737F09",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"dataframe\">\n",
       "<caption>A data.frame: 6 × 5</caption>\n",
       "<thead>\n",
       "\t<tr><th></th><th scope=col>study_id</th><th scope=col>replicated</th><th scope=col>posemo</th><th scope=col>certain</th><th scope=col>language_style</th></tr>\n",
       "\t<tr><th></th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;dbl&gt;</th></tr>\n",
       "</thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>1</th><td>1</td><td>1</td><td>1.36</td><td>1.75</td><td>1</td></tr>\n",
       "\t<tr><th scope=row>2</th><td>3</td><td>0</td><td>1.92</td><td>1.17</td><td>1</td></tr>\n",
       "\t<tr><th scope=row>3</th><td>4</td><td>1</td><td>1.41</td><td>1.36</td><td>1</td></tr>\n",
       "\t<tr><th scope=row>4</th><td>5</td><td>0</td><td>1.85</td><td>0.69</td><td>0</td></tr>\n",
       "\t<tr><th scope=row>5</th><td>6</td><td>0</td><td>0.63</td><td>0.72</td><td>0</td></tr>\n",
       "\t<tr><th scope=row>6</th><td>7</td><td>0</td><td>1.26</td><td>0.77</td><td>0</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "A data.frame: 6 × 5\n",
       "\\begin{tabular}{r|lllll}\n",
       "  & study\\_id & replicated & posemo & certain & language\\_style\\\\\n",
       "  & <chr> & <dbl> & <dbl> & <dbl> & <dbl>\\\\\n",
       "\\hline\n",
       "\t1 & 1 & 1 & 1.36 & 1.75 & 1\\\\\n",
       "\t2 & 3 & 0 & 1.92 & 1.17 & 1\\\\\n",
       "\t3 & 4 & 1 & 1.41 & 1.36 & 1\\\\\n",
       "\t4 & 5 & 0 & 1.85 & 0.69 & 0\\\\\n",
       "\t5 & 6 & 0 & 0.63 & 0.72 & 0\\\\\n",
       "\t6 & 7 & 0 & 1.26 & 0.77 & 0\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "A data.frame: 6 × 5\n",
       "\n",
       "| <!--/--> | study_id &lt;chr&gt; | replicated &lt;dbl&gt; | posemo &lt;dbl&gt; | certain &lt;dbl&gt; | language_style &lt;dbl&gt; |\n",
       "|---|---|---|---|---|---|\n",
       "| 1 | 1 | 1 | 1.36 | 1.75 | 1 |\n",
       "| 2 | 3 | 0 | 1.92 | 1.17 | 1 |\n",
       "| 3 | 4 | 1 | 1.41 | 1.36 | 1 |\n",
       "| 4 | 5 | 0 | 1.85 | 0.69 | 0 |\n",
       "| 5 | 6 | 0 | 0.63 | 0.72 | 0 |\n",
       "| 6 | 7 | 0 | 1.26 | 0.77 | 0 |\n",
       "\n"
      ],
      "text/plain": [
       "  study_id replicated posemo certain language_style\n",
       "1 1        1          1.36   1.75    1             \n",
       "2 3        0          1.92   1.17    1             \n",
       "3 4        1          1.41   1.36    1             \n",
       "4 5        0          1.85   0.69    0             \n",
       "5 6        0          0.63   0.72    0             \n",
       "6 7        0          1.26   0.77    0             "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 数据预处理\n",
    "# 计算 'certain' 列的中位数\n",
    "median_certain <- median(df$certain)\n",
    "\n",
    "# 创建新列，编码规则：大于中位数为 1，小于等于中位数为 2\n",
    "df <- df %>%\n",
    "  dplyr::mutate(language_style = ifelse(certain > median_certain, 1, 0))\n",
    "    \n",
    "# 输出结果\n",
    "head(df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "31b7b43b",
   "metadata": {
    "_id": "EE563704B3464650B00D8CDEB623D3E9",
    "collapsed": false,
    "id": "2329C54B3A854C158184EA138060E228",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  数量 百分比\n",
      "0  173  57.86\n",
      "1  126  42.14\n"
     ]
    }
   ],
   "source": [
    "# 计算不同水平的数量和百分比\n",
    "level_counts <- table(df$replicated)  # 计算数量\n",
    "level_percentages <- round(prop.table(level_counts) * 100, 2)  # 计算百分比并保留两位小数\n",
    "# 创建一个新的数据框合并结果\n",
    "result_df1 <- as.data.frame(t(rbind(level_counts,level_percentages)))\n",
    "colnames(result_df1) <- c(\"数量\", \"百分比\")\n",
    "\n",
    "# 显示结果（0代表不可重复，1代表可重复）\n",
    "print(result_df1)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3f9a6649",
   "metadata": {
    "_id": "7D0BAB067DCB4951B131492739ACE9A6",
    "id": "8CF7848E9DE04EEC85C817F5CBDC1E1C",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "研究能否被重复出来，与他们的语言风格有关系：  \n",
    "\n",
    "有 56%（71/126）的能被重复的研究使用了确切的语言风格；  \n",
    "\n",
    "约45%（78/173）的不能被重复研究使用了确切的语言风格。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ee24ce86",
   "metadata": {
    "_id": "3216FB04D2094FABBE7FBDE352C58000",
    "collapsed": false,
    "id": "B0319CE058A44149A5583DA4E79851CF",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"dataframe\">\n",
       "<caption>A tibble: 2 × 3</caption>\n",
       "<thead>\n",
       "\t<tr><th scope=col>replicated</th><th scope=col>0</th><th scope=col>1</th></tr>\n",
       "\t<tr><th scope=col>&lt;dbl&gt;</th><th scope=col>&lt;int&gt;</th><th scope=col>&lt;int&gt;</th></tr>\n",
       "</thead>\n",
       "<tbody>\n",
       "\t<tr><td>0</td><td>95</td><td>78</td></tr>\n",
       "\t<tr><td>1</td><td>55</td><td>71</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "A tibble: 2 × 3\n",
       "\\begin{tabular}{lll}\n",
       " replicated & 0 & 1\\\\\n",
       " <dbl> & <int> & <int>\\\\\n",
       "\\hline\n",
       "\t 0 & 95 & 78\\\\\n",
       "\t 1 & 55 & 71\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "A tibble: 2 × 3\n",
       "\n",
       "| replicated &lt;dbl&gt; | 0 &lt;int&gt; | 1 &lt;int&gt; |\n",
       "|---|---|---|\n",
       "| 0 | 95 | 78 |\n",
       "| 1 | 55 | 71 |\n",
       "\n"
      ],
      "text/plain": [
       "  replicated 0  1 \n",
       "1 0          95 78\n",
       "2 1          55 71"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 计算不同水平的数量\n",
    "result_df2 <- df %>%\n",
    "  dplyr::group_by(replicated, language_style) %>%  # 按 'replicated' 和 'language_style' 分组\n",
    "  dplyr::summarise(N = n(), .groups = 'drop') %>%  # 计算每组的数量并取消分组\n",
    "  tidyr::pivot_wider(names_from = language_style, values_from = N, values_fill = list(N = 0))  # 转换为宽格式\n",
    "\n",
    "# 显示结果\n",
    "result_df2"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "30584852",
   "metadata": {
    "_id": "D7B1CA15338E40EC923C2CD12E25E9C3",
    "id": "EE4361287A5445D7B0F0BDFC8311BE95",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 先验 (prior) 和 数据 (data)  \n",
    "\n",
    "#### 先验  \n",
    "\n",
    "在我们这个事件中，我们评估某项研究可重复性之前，我们关于研究可重复性的信念，在贝叶斯统计中被称为先验（prior）。  \n",
    "\n",
    "假设我们的信念被2015年Science的文章所影响，相信约40%的心理学实验是可重复的。这就是我们开始了解这项研究前的信念。  \n",
    "\n",
    "- 先验（prior）：指没有观察到具体数据之前，根据已有知识、经验或主观判断对某个事件发生概率的初步估计。  \n",
    "\n",
    "本例中，40%的估计代表了我们基于已有文献和领域经验的先验信念——即在没有观察具体文章之前，推测它有40%的研究能够成功重复。  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ed62ff9a",
   "metadata": {
    "_id": "3AFE8BA367D04C728F6936BFE83C68D8",
    "id": "63EF32D5EFE946C8971AF46EBA436F74",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 先验 vs 数据  \n",
    "\n",
    "在了解到被评估的研究来自Herzenstein 等（2024）之后，我们又获得了新的信息，这个新信息我们将其称为数据（data）。  \n",
    "\n",
    "此时，我们会有两个信息：  \n",
    "\n",
    "- 先验信息 (prior)：约 40% 的研究是可重复。  \n",
    "- 数据 (data) ：有 56%能被重复的研究使用了确切的语言风格；约45%不能被重复研究使用了确切的语言风格。  \n",
    "\n",
    "我们会如何推断某项来自Herzenstein 等(2024)的研究？ $P(可重复|确切语言风格)$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c926e077",
   "metadata": {
    "_id": "B32FEE0C2D57457A83455C875FB2E8E8",
    "id": "075204EA9C9E4B179EB043433093A888",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "在先验和数据之间找到平衡？  \n",
    "\n",
    "这正是贝叶斯的思路：基于数据对先验进行更新。  \n",
    "\n",
    "$$  \n",
    "Posterior = \\frac {data * \\, prior}{Average \\, probability \\, of \\, data}  \n",
    "$$  \n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjkvl0f6gx.png?imageView2/0/w/960/h/960)  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "07a0b856",
   "metadata": {
    "_id": "3CC4CAB875C945868176443036FE5CEF",
    "id": "7F796DFD78C34397908A8859DBD339A1",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 先验概率(Prior probability)  \n",
    "我们现在使用更加正式一点的语言来对上述的信息进行描述：  \n",
    "\n",
    "假如一项心理学研究**能**被其他研究者独立地重复出来，我们认为一个特定的事件发生了。  \n",
    "\n",
    "我们将这个事件使用$B$来表示。  \n",
    "\n",
    "假如一项心理学研究**不能**被其他研究者独立地重复出来，我们认为一个特定的事件**没有**发生了，使用符号$B^{c}$(B的补集complement)。  \n",
    "\n",
    "根据Science于2015年的文章，我们可以得以下公式：  \n",
    "\n",
    "$$  \n",
    "P(B) = 0.40 \\\\  \n",
    "\n",
    "P(B^{c}) = 0.60  \n",
    "$$  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "701a948c",
   "metadata": {
    "_id": "84A1E61DCF1B49E3961E5D2DE1354729",
    "id": "7C85AFE2216647AC887C14B0D6D9B0E6",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "<style>  \n",
    "table {  \n",
    "    width: 100%;  \n",
    "    table-layout: auto;  \n",
    "}  \n",
    "</style>  \n",
    "\n",
    "| 事件       | **$B$**   | **$B^{c}$** | **Total** |  \n",
    "|------------|-----------|-------------|-----------|  \n",
    "| **probability** | **0.4** | **0.6**     | **1**     |  \n",
    "\n",
    "\n",
    "换一句话说，在我们对需要被评估的研究进行评估前，我们关于事件$B$的先验信念是$P(B)$，这也被称为先验模型(prior model)  \n",
    "\n",
    "作为一个有效的概率模型(valid probability model)，它必须：  \n",
    "\n",
    "（1）考虑所有可能的事件（所有文章都必须是可重复或不可重复的，没有其他可能性）；  \n",
    "\n",
    "（2）它为每个事件分配先验概率；  \n",
    "\n",
    "（3）这些概率加起来为1。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ac62e943",
   "metadata": {
    "_id": "194A3554CB3042419CEE8B257085C841",
    "id": "18E2F5F77EF1457B8081025B501D84C6",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 数据模型（条件概率与似然性）  \n",
    "\n",
    "借鉴先验模型的构建方式，我们同样可以采用模型（即公式）对关于目标研究的新信息进行正式地描述。  \n",
    "- 我们用符号 $A$ 表示研究中使用了确切的语言风格。  \n",
    "\n",
    "我们要将如下一句话的信息进行形式化：  \n",
    "\n",
    "**有 56%能被重复的研究使用了确切的语言风格；约45%不能被重复研究使用了确切的语言风格。**  \n",
    "\n",
    "**有 56%能被重复的研究使用了确切的语言风格，44%能被重复的研究没有使用确切的语言风格；约45%不能被重复研究使用了确切的语言风格；55%的不能被重复的研究没有使用确切的语言风格。**  \n",
    "\n",
    "将数据形式化，通过条件概率来量化文章展现出语言确切的可能性。具体如下：  \n",
    "\n",
    "$$  \n",
    "P(A|B) \\approx 56\\%  \n",
    "$$  \n",
    "- 当研究是可重复的，使用确切语言的概率大约 56%。  \n",
    "\n",
    "$$  \n",
    "P(A|B^{c}) \\approx 45\\%  \n",
    "$$  \n",
    "- 在研究不可重复的情况下，使用确切语言的概率大约为 45%。  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9b89a7a7",
   "metadata": {
    "_id": "7F15AB569AC94A4FB3ECAE20E73A67A9",
    "id": "F336406B7838485BAD2B3A25AE8C5E58",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjq96jfv8f.png?imageView2/0/w/960/h/960)  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f5a56bb9",
   "metadata": {
    "_id": "2B6980037F1B43238F991D9DF01B5581",
    "id": "842CD04EA3804FEB9FC6F72A241F5C46",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 条件概率  \n",
    "\n",
    "条件概率：给定某个条件下发生另一件事情的概率。  \n",
    "注意：条件概率的定义是有顺序的，$P(A|B)$ 与 $P(B|A)$ 并不相等。  \n",
    "\n",
    "例如：  \n",
    "- $P(A|B)$ 表示在研究可重复的情况下，使用确切语言的概率；  \n",
    "- $P(B|A)$ 表示的是在研究使用确切语言的情况下，该研究是可重复的概率。  \n",
    "\n",
    "很多时候，人们容易混淆这两者，尤其在贝叶斯推理中。因此，清楚条件的前提和结果是很重要的。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d7dddcfc",
   "metadata": {
    "_id": "FF041A9D25BC4D26B5B16147482E99AF",
    "id": "7A45904F193945B5B07B508186DBA0BC",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 似然(likelihood)  \n",
    "\n",
    "**似然的定义**  \n",
    "\n",
    "从条件概率中，我们知道 $P(A|B) = 0.56$ 和 $P(A|B^c) = 0.45$，即使用确切语言的研究更可能是可重复的。  \n",
    "\n",
    "似然（likelihood）描述的是在某个特定数据已经出现的情况下，不同假设为真的可能性。在这个例子中，我们比较两种假设:  \n",
    "- $L(B|A) = P(A|B) = 0.56$：假定使用确切语言的研究出现在可重复研究的假设之下，其似然较高。  \n",
    "- $L(B^c|A) = P(A|B^c) = 0.45$：假定使用确切语言的研究出现在不可重复研究的假设之下，其似然较对较低。  \n",
    "\n",
    "因此，似然函数表明：当前数据模式（使用确切语言）在特定假设（可重复或不可重复的研究）下更可能出现：  \n",
    "$L(B|A= 0.56 > L(B^c|A) = 0.45$  \n",
    "\n",
    "这就是似然函数(likelihood function)的核心：某个数据$A$出现已经出现了，它不同的假设（可重复或不可重复）下出现的可能性分别是多少？  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e114174d",
   "metadata": {
    "_id": "EBF5574E5D514D099F1E542A25C73CB2",
    "id": "8FEEFC1E2E1D4325954E08BF7FD6E685",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "例如，针对“数据 A：研究使用确切语言”的似然可以写成：$L(*|A)$  \n",
    "\n",
    "⚠️‼️ 似然的计算仍然使用概率：  \n",
    "$$  \n",
    "L(B|A) = P(A|B) \\quad\\quad L(B^{c}|A) = P(A|B^{c})  \n",
    "$$  \n",
    "\n",
    "上述两个式子分别表示在“研究可重复”和“研究不可重复”两种可能的情况下，使用确切语言的概率。  \n",
    "\n",
    "*注意，在似然函数中，数据是已知发生的，而产生数据的假设模型是未知的，也是我们感兴趣的。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ea52e286",
   "metadata": {
    "_id": "522E8487320A4C03B55370205BC70957",
    "id": "2E3BD813953B4355969F4544183CDF28",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 概率(Probability) vs 似然(likelihood)  \n",
    "\n",
    "🤔概率和似然似乎都在表示某种可能性，它们的区别是什么呢？  \n",
    "  \n",
    "| 特性        | 概率 (Probability)                                      | 似然 (Likelihood)                                   |  \n",
    "|-------------|---------------------------------------------------------|----------------------------------------------------|  \n",
    "| 定义        | 已知假设条件，得到某个数据的可能性                           | 已知数据，不同假设条件下得到该数据的可能性     |  \n",
    "| 范围        | [0, 1]                                                 | 不限于 [0, 1]                                     |  \n",
    "| 总和        | 所有可能事件的总和为1                                  | 可以不等于1                                       |  \n",
    "| 应用        | 预测和决策                                           | 模型估计和选择                                     |  \n",
    "\n",
    "注意：  \n",
    "* 先验概率的总和等于1，因为先验表示所有可能结果的分布，表示事件B发生的概率，是我们的主观推测；  \n",
    "* 似然总和不等于1，因为似然函数不是概率函数，它告诉我们事件A在不同假设下发生的相对可能性。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5452ab44",
   "metadata": {
    "_id": "9C6D03A81823448BAF841D0A31BB7935",
    "id": "74006388C9E24724B546FE740821298D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "根据我们的例子，概率和似然可以整理为下表：  \n",
    "\n",
    "TABLE 2.2: Prior probabilities and likelihoods of reproducible research.  \n",
    "\n",
    "| event       |     $B$     |     $B^c$   |   total   |  \n",
    "|-------------|--------------|--------------|-----------|  \n",
    "| prior       |      0.4    |      0.6     |     1     |  \n",
    "| likelihood   |     0.56    |     0.45     |   ≠ 1     |"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "235524ba",
   "metadata": {
    "_id": "5D88441C0EE945FCA95BD99A5040421D",
    "id": "A518C7BFF2AE4E568FC4D2C8A0E58D47",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## 分母（normalizing constant）-- 边际概率 (marginal probability)  \n",
    "\n",
    "似然函数描述了在可重复性研究和不可重复研究中使用确切语言的情况。  \n",
    "\n",
    "我们想知道的是：所有研究中使用自信语言的总体可能性是多少。  \n",
    "\n",
    "这被称为边际概率 $P(A)$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8670ec84",
   "metadata": {
    "_id": "BF86779031B04107B1939DF117337534",
    "id": "C8AA9FA88AB24D179E04A8FA854C8564",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "我们要做的，就是把每个假设下出现事件$A$的似然与每个假设本身的概率相乘（即把每个假设自身的概念纳入考虑），这两者之和即为边际概率。  \n",
    "$$  \n",
    " P(A) = P(A \\cap B) + P(A \\cap B^{c}) = L(B|A) * P(B) + L(B^{c} | A) * P(B^{c}) = P(A|B) * P(B) + P(A| B^{c}) * P(B^{c})  \n",
    "$$  \n",
    "\n",
    "$$ P(A) = 0.56 * 0.4 + 0.45* 0.6 = 0.494 $$  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d2b5455c",
   "metadata": {
    "_id": "AE1A881A0B5049E188536745016CA9B7",
    "id": "C56E38995A7B46B5974BDE5907F9043F",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 后验概率模型(Posterior probability model via Bayes’ Rule)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f1b45e04",
   "metadata": {
    "_id": "215AEDEE85144A8B8EF61191D2C0D7BC",
    "id": "69A43EE5AFB042769F714582B453F92B",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**直觉理解**  \n",
    "\n",
    "最后，我们来计算后事件$B$的后验概率，即，当我们知道某个研究使用了确切的语言风格之后，它能被重复的可能性是多少？  \n",
    "\n",
    "我们同样通过条件概率来描述它：$P(B|A)$。  \n",
    "\n",
    "在正式计算之前，我们可以回顾一下这个表格来建立一些直觉。   \n",
    "\n",
    "||$B$|$B^c$|Total|  \n",
    "|---|---|---|---|  \n",
    "|$A$|0.56 * 0.4 = 0.224|0.45* 0.6 = 0.27|0.494|  \n",
    "|$A^c$|0.176|0.33|0.506|  \n",
    "|Total|0.4|0.6|1.0|  \n",
    "\n",
    "note：  \n",
    "- $A$ ：表示使用确切语言的研究。  \n",
    "- $A^c$ ：表示不使用确切语言的研究。  \n",
    "- $B$ ：表示研究是可重复的。  \n",
    "- $B^c$ ：表示研究不可重复的。  \n",
    "\n",
    "因为我们知道这项研究**使用确切语言风格**，所以我们直接锁定第一行，  \n",
    "- 在A行中，45.3%(0.224/0.494)的研究是可重复的，54.7%(0.27/0.494)的研究是不可重复的。  \n",
    "- 因此，根据后验概率 45.3%的可能性可以认为当前这一研究是可重复的。  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1bde8eb3",
   "metadata": {
    "_id": "2F6FEE1196FF413D9DC75E49DE27510D",
    "id": "E9A966DCEE3F41529FC7E52CD837AA8B",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**正式计算**  \n",
    "\n",
    "如何凭借贝叶斯公式的数学形式推导得到该结果？  \n",
    "\n",
    "$$  \n",
    "Posterior \\sim P(B|A) = \\frac {data * prior}{Average \\, probability \\, of \\, data} ={\\frac{P(A\\cap B)}{P(A)}}={\\frac{L(B|A) * P(B)}{L(B|A) * P(B) + L(B^{c}|A) * P(B^{c})}}  \n",
    "$$  \n",
    "\n",
    "- $P(B|A)={\\frac{P(B)L(B|A)}{P(A)}}={\\frac{0.4\\cdot0.56}{0.494}}=0.453$  \n",
    "- 当带入之前计算得到的数值到贝叶斯公式中，我们得到了确切语言为可重复研究的概率。  \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d69b4851",
   "metadata": {
    "id": "AF46328AEC9A4AD39F6E456C2A695785",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "使用同样的方法，我们可以计算出使用确切语言的研究为不可重复研究的概率，结果如下表。  \n",
    "- 可以注意到：先验概率和后验概率的和均等于1。  \n",
    "\n",
    "TABLE 2.4: The prior and posterior models of reproducibility.  \n",
    "\n",
    "\n",
    "| event    | $B$     | $B^c$ | Total    |  \n",
    "| --------  | -------- | -------- | -------- |  \n",
    "| prior probability | 0.4 | 0.6 | 1 |  \n",
    "| posterior probability | 0.453 | 0.547 | 1 |  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "627b2935",
   "metadata": {
    "_id": "3845FF266B2F4EC5A5A0B278B058A20D",
    "id": "AF9AD4026CEC45088BE8D279A12248CA",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "思考时间🧐：是否加入分母的意义何在？"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "477b443e",
   "metadata": {
    "_id": "CEB912EE1CC941F6981238ACA99290B0",
    "id": "6CC267C3B5B545169478BEEFEFDB46F8",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 后验概率计算模拟练习  \n",
    "\n",
    "\n",
    "🤓为了深入理解先验知识、似然（数据）和后验概率，我们将通过编写代码来计算后验概率，以增强对这些概念的理解和实践能力。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5c786d20",
   "metadata": {
    "_id": "014643A57C28407E8B3FFABE2013D299",
    "id": "BE01EC68D6124F33A2F4313BD4EA884D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "1. 定义研究的可重复性与相应的先验概率"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "7e0c13a4",
   "metadata": {
    "_id": "73947288991047B59848C3816D23BCFA",
    "collapsed": false,
    "id": "0E0E32B47EFA4BA28A4847F1DE9E0868",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "# 定义文章类型\n",
    "article <- data.frame(replicated = c(\"yes\", \"no\"))\n",
    "\n",
    "# 定义先验概率\n",
    "prior <- c(0.4, 0.6)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fd5ce3ab",
   "metadata": {
    "_id": "778C6170F14C43CC947B8E9A3A624813",
    "id": "64D5BA370AB04F5CA925E58857959BCB",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "2. 模拟一些可能被投放给你的研究"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "0c2158b2",
   "metadata": {
    "_id": "5FE6653043FA4C9AB98D071433A517EC",
    "collapsed": false,
    "id": "D71EA45B7E0945D9B05164EB0B772ADA",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "   replicated\n",
      "1         yes\n",
      "2         yes\n",
      "3          no\n",
      "4         yes\n",
      "5         yes\n",
      "6          no\n",
      "7          no\n",
      "8          no\n",
      "9         yes\n",
      "10         no\n"
     ]
    }
   ],
   "source": [
    "# 模拟生成 10000 项研究，包括其类型\n",
    "set.seed(84735)\n",
    "article_sim <- article %>% \n",
    "  slice_sample(n = 10000, weight_by = prior, replace = TRUE)\n",
    "\n",
    "# 查看前 10 行数据\n",
    "print(head(article_sim, 10))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "cb84190f",
   "metadata": {
    "_id": "0798D80080374E6DB278A4BD30AFD568",
    "collapsed": false,
    "id": "5B8A16E9589445CEA5BB3CC73CC1720A",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nKVUS2/bMAy++1fo6BzMkXpS1wHDgAI7dDOwQ9BD0SbF\nijZd2w3D/v0+ybHjvDpgixFZ4usjP9ISw3g6weIim5vH5rkRU56XO/Pums3da1MsQorV4GVl\n1seCwePzRyMk0WWofkF2gf99s7wyTGxuG2HzyRy4fmkuzXMTA+VsDdaUjGclKRZs6xtWX83m\nKKm/+axrZLFikhGxUCG3YMdwTFnZIQBTYMkRBJD3iUOeYcCbInwSBRcQRciVQExR0g7DMRA4\nVBTLbh8l2OyloCgn9Q6bbCXEOQr8SVRLDBIvI04JxWJ3OFzJA8ljdjuu+STXW4pcIQc5PZo9\nzh5APpMbiz/cIL/3PeJQymAqbMdkOnoldgGVGId0s9UkYvrH5t26447RqX7dtLzo75sOHOKX\n0SVsbNZs+ttm2QozL676CyRfFA7RBoU9p3DnFP6cIpxTxFHxoQcJpT/DH+xGMCjxmLVRUHjb\n2tiQwIfb2YyCuQ266+cmw3lmIXDiGHcmo2Buw5ESz8KMgplNiOT8rMv1ONfXtp+agnGwjgbG\nJ48h073aD+iSlMiV70tg6kqGk2Tm5KIl9TqzmiR7of91HCVJwQzG2USqIXl7NI2bpzKOElGj\nd6COh1H4vXCpXb1O01BDb+HsFgdt8/gak1aIIGR95OwPIZbty2rRWW2/Y03tQ91/q/ub63r4\nscCyqpLb7WCW6F1FAjfqsnqPckKZAM+xQCzbm6fq8rOum12kKevpdvQaqVx6uIwoqDXqKDNe\nSjmG3e19osKAu5Mj6hOnVL5sbP+/vvp9vXXVFljMofhIHhkKsFnH15Dvm5fo6B8x7llO+s/q\nzRSy4h4Yqp5OAVOTo6/UB1DFitv3uPrNwoX2aewb6EpBs45j1FlB6bCYunLZ/AHptIW+CmVu\nZHN0cmVhbQplbmRvYmoKNSAwIG9iagogICA2NzkKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4\ndEdTdGF0ZSA8PAogICAgICAvYTAgPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQg\nPDwKICAgICAgL2YtMC0wIDcgMCBSCiAgID4+Cj4+CmVuZG9iago4IDAgb2JqCjw8IC9UeXBl\nIC9PYmpTdG0KICAgL0xlbmd0aCA5IDAgUgogICAvTiAxCiAgIC9GaXJzdCA0CiAgIC9GaWx0\nZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nDNTMOCK5orlAgAGOAFdCmVuZHN0cmVhbQpl\nbmRvYmoKOSAwIG9iagogICAxNgplbmRvYmoKMTEgMCBvYmoKPDwgL0xlbmd0aCAxMiAwIFIK\nICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgODY2MAo+PgpzdHJlYW0KeJzV\nOXt8E2W235mZTJI+Mpm8OjSlmXTa8mih0FCwWMlI21isSNpSSYpACgWKDyikPkCFIKA1gBTt\n4iIqvYqusChTQCiursVdvfjgyu762LvqUhX3pVguvnbBJvfMJC2FXb33d+/dP+7XfjPfeXzn\nO9855zvfmZYAISSFRAhNxAU3N7a8f82jnxJiPkYI1bDg1lbx6t9VnyPEmotw26KWxTevbjzE\nE2LfS4j+4OKbVi66rPPgrSgBYXNW88LGplSysYuQ4SHETWxGRHoH/SDCP0Y4t/nm1tsDPzNs\nRfgFhAM3LVvQSMi+cYRk2xC+/ubG21voDfQphFsQFltWLGzpf/aqaQi3E0KXE4ocJ0RXrFuL\n2uqJS06nWB3N0kaDjmYQ5T1edJy3QGkp7+E948dZ3bzbyrv548zC8zuuoY/r1p5boys5n8H8\nGYWjLH/8c0bSbSOpJIOMlG0WNo2wRBhm5MJBo562h4P0MOItIIK3YIhQMFNSDsWbLe5iCz0w\n9hRbGOlvX3751Wkgfzt9ePPjT219sHNnB3U0tjO2CVbAArgRbog9ENsO48ESOxt7I/Z27C+Q\nRYA8QgjD4X5SSIFsYwwUlZqmYxiaZQ1AoDVIBNSAJx7B6/EUeVQ1eA8q4Slx87qSPA/vtj8C\ni2Mvw/SnYNZ2puyTPZ+eF7YTlLsY5abh3rLJFFnMIibOYB9u5wjjEg1ZJoslNRy06IFkkayB\nNSykVNCWspTiMhnabnltqSm6kgn5Ug6rHzEFPMUOu80Eevx12xd7Hnx8Z2RG28rwj9K7bd++\n/M6n1R2/CrdlUyfX3HJg6513tl3XGrlrOb/72GtHah9/fM/ch3yoGup2Ldp9GOo2kiyQS/Ws\nM8uek0ZITp45i2VHjc7jzby5NcgL1run4wOmczyYdTxPO10uIRx06WljOKhXXeNJ+EZVWSia\n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\nnsWth5A2D/v1vvGu2Q1VrgZ8W4st9To0D1NM199EQxpdRl9D30TfSev6auJyUw0l15Rc5pNr\n8kb63vLDNJ/oqkLJV2Hf54OTvj4fFfGBo9hezwNXby7m6rGKrQcCLhfn5eZxaziG44q4Gdwy\nbgt3kotzei/i+jh6GYEZBCIO0EE3tHfNrCsoqO7Wx7Ei0vtnK9Cm5NWpT7mmQWHbFFLfMDvQ\nBXB/cMPmzWTq8GqluC6ghIYHq5UmHMjqIIID8/AuB5kaDLeGW28pUBskBqS1oCAcVkegQgUJ\nmjaCgjCSkQ0nIdB6CwkXhFshHG4l4VbEh2EujsNhEkZ8GHAK9nBBUv6gJFxgLgrCR2tiiXAY\n54VRTji5nDCX/Ccsp98mCmVuZHN0cmVhbQplbmRvYmoKMTIgMCBvYmoKICAgNTU4MAplbmRv\nYmoKMTMgMCBvYmoKPDwgL0xlbmd0aCAxNCAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUK\nPj4Kc3RyZWFtCnicXZLLasMwEEX3+opZpovgRxKJgjGUdONFH9TtBzjS2DXUspCdhf++M5qQ\nQhfWHD3u6HLl7Nw8N35cIXuPs21xhX70LuIyX6NFuOAwelWU4Ea73mZptFMXVEbidltWnBrf\nz6qqIPugzWWNG+ye3HzBBwUA2Vt0GEc/wO7r3MpSew3hByf0K+SqrsFhT+1euvDaTQhZEu8b\nR/vjuu1J9nficwsIZZoXYsnODpfQWYydH1BVeV5D1fe1Qu/+7ZU3yaW3311U1YGP5jkV4kK4\nYC6FS+aD8IH5KHxkPgmfmLWwJtaYmApxL0xmKvOYmAqti1az1kh/w/2N3Gv4XiPeDHvTVs5b\nZumjUx/RatZq8a/ZvxGfhn1qYc1s5F4qHM4tBY6J3/Oev73GSNGnR0+Zc9qjx/t/EebAqvT9\nAs+gnnoKZW5kc3RyZWFtCmVuZG9iagoxNCAwIG9iagogICAzMTkKZW5kb2JqCjE1IDAgb2Jq\nCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvcgogICAvRm9udE5hbWUgL1ZGWkZMWitMaWJlcmF0\naW9uU2FucwogICAvRm9udEZhbWlseSAoTGliZXJhdGlvbiBTYW5zKQogICAvRmxhZ3MgMzIK\nICAgL0ZvbnRCQm94IFsgLTU0MyAtMzAzIDEzMDEgOTc5IF0KICAgL0l0YWxpY0FuZ2xlIDAK\nICAgL0FzY2VudCA5MDUKICAgL0Rlc2NlbnQgLTIxMQogICAvQ2FwSGVpZ2h0IDk3OQogICAv\nU3RlbVYgODAKICAgL1N0ZW1IIDgwCiAgIC9Gb250RmlsZTIgMTEgMCBSCj4+CmVuZG9iago3\nIDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9TdWJ0eXBlIC9UcnVlVHlwZQogICAvQmFzZUZv\nbnQgL1ZGWkZMWitMaWJlcmF0aW9uU2FucwogICAvRmlyc3RDaGFyIDMyCiAgIC9MYXN0Q2hh\nciAxMjEKICAgL0ZvbnREZXNjcmlwdG9yIDE1IDAgUgogICAvRW5jb2RpbmcgL1dpbkFuc2lF\nbmNvZGluZwogICAvV2lkdGhzIFsgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA1\nNTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQg\nNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDU1\nNi4xNTIzNDQgMCA1MDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDAgMCAwIDIyMi4xNjc5Njkg\nMCAwIDIyMi4xNjc5NjkgMCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCAwIDMz\nMy4wMDc4MTIgNTAwIDI3Ny44MzIwMzEgNTU2LjE1MjM0NCAwIDAgMCA1MDAgXQogICAgL1Rv\nVW5pY29kZSAxMyAwIFIKPj4KZW5kb2JqCjEwIDAgb2JqCjw8IC9UeXBlIC9PYmpTdG0KICAg\nL0xlbmd0aCAxOCAwIFIKICAgL04gNAogICAvRmlyc3QgMjMKICAgL0ZpbHRlciAvRmxhdGVE\nZWNvZGUKPj4Kc3RyZWFtCnicVZFBa4QwEIXv+RVzKehFE1ddd5E9rMJSSkHcnlp6CDG4gWIk\niaX77zvR1dLkNB9v5r1JGFDCcsgoSYClOWF72OUHUpYQv91HCXHDe2kJAMQvqrPwAQlQaOFz\nRpWeBgeMnE5zR2N0NwlpIBBcGQ0sYkWUQnBzbrTHOJ5pb/h4U8JG2vRhuIwxkjulh5o7CUF9\nTGiS0QPDkxZZ8R6u8/8SwRO6+taGG+kj+FAzeJWd4mf9g0kp3myf40J0yzs4lFtIN/3F6GmE\nsvSFrxePma7oitTwwY7eS9xX/AzOTHKtKlTV8lsJ2V7OHmJmz1tp9WSEtLDbPK/YKNwS3eIH\n/Fuv4o5/6f6xHT7+YzkU/QKpnG4yCmVuZHN0cmVhbQplbmRvYmoKMTggMCBvYmoKICAgMjc1\nCmVuZG9iagoxOSAwIG9iago8PCAvVHlwZSAvWFJlZgogICAvTGVuZ3RoIDc5CiAgIC9GaWx0\nZXIgL0ZsYXRlRGVjb2RlCiAgIC9TaXplIDIwCiAgIC9XIFsxIDIgMl0KICAgL1Jvb3QgMTcg\nMCBSCiAgIC9JbmZvIDE2IDAgUgo+PgpzdHJlYW0KeJxjYGD4/5+JgYuBAUQwMTJLMjAwMvAD\nCWZmkBgHkCUrDeK2AQkWEFc+EMSSBRJSniAiEUhIvwcSMmwQUxhBBDOjwk2gmMIHBgYAdKcH\n7wplbmRzdHJlYW0KZW5kb2JqCnN0YXJ0eHJlZgo4NDMyCiUlRU9GCg==",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/5B8A16E9589445CEA5BB3CC73CC1720A/t2fa5njrsp.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 480
      },
      "image/jpeg": {
       "height": 300,
       "width": 480
      },
      "image/png": {
       "height": 300,
       "width": 480
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 480
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#我们可以通过画图来查看这些被投放研究的可重复性比例。\n",
    "options(repr.plot.width=8, repr.plot.height=5) #自定义画布大小\n",
    "article_sim %>%\n",
    "  count(replicated) %>% \n",
    "  ggplot(aes(x = replicated, y = n, fill = replicated)) +\n",
    "  geom_bar(stat = \"identity\",width = 0.6) +\n",
    "  labs(x = \"replicated\", y = \"counts\") +\n",
    "  scale_fill_manual(values = c(\"yes\" = \"skyblue\", \"no\" = \"salmon\")) +\n",
    "  scale_y_continuous(expand = c(0,0),limits = c(0, 6000)) + \n",
    "  papaja::theme_apa()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2b64cdcb",
   "metadata": {
    "_id": "A67F09F99463465D922E85F27AA61FAA",
    "id": "8EA6345D5D314F33B0A02D42D9ABB852",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "3. 接下来我们需要模拟10000项研究使用确切语言风格的情况，  \n",
    "- 和之前相同，不可重复研究使用确切语言风格的可能性为45% ，  \n",
    "- 可重复研究使用确切语言风格的可能性为56% "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "ec734166",
   "metadata": {
    "_id": "EDE9730D549649EAA93AD55395737CD7",
    "collapsed": false,
    "id": "E7C7E3E0765147FBA09E477283C5280A",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "# 设置条件概率\n",
    "article_sim$data_model <- ifelse(article_sim$replicated == \"no\", 0.45, 0.56)\n",
    "\n",
    "# 定义研究是否使用确切语言\n",
    "data <- c(\"certain\", \"uncertain\")\n",
    "\n",
    "# 生成确切语言相关的数据\n",
    "article_sim$language <- mapply(function(p) sample(data, 1, prob = c(p, 1 - p)), article_sim$data_model)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "8d0745b3",
   "metadata": {
    "_id": "E1F09028FF044BED8FFB4AE3E0CB8988",
    "collapsed": false,
    "id": "296F3390D10143E991FA4C956E79E67C",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"dataframe\">\n",
       "<caption>A tibble: 2 × 3</caption>\n",
       "<thead>\n",
       "\t<tr><th scope=col>language</th><th scope=col>no</th><th scope=col>yes</th></tr>\n",
       "\t<tr><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;int&gt;</th><th scope=col>&lt;int&gt;</th></tr>\n",
       "</thead>\n",
       "<tbody>\n",
       "\t<tr><td>certain  </td><td>2693</td><td>2353</td></tr>\n",
       "\t<tr><td>uncertain</td><td>3276</td><td>1678</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "A tibble: 2 × 3\n",
       "\\begin{tabular}{lll}\n",
       " language & no & yes\\\\\n",
       " <chr> & <int> & <int>\\\\\n",
       "\\hline\n",
       "\t certain   & 2693 & 2353\\\\\n",
       "\t uncertain & 3276 & 1678\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "A tibble: 2 × 3\n",
       "\n",
       "| language &lt;chr&gt; | no &lt;int&gt; | yes &lt;int&gt; |\n",
       "|---|---|---|\n",
       "| certain   | 2693 | 2353 |\n",
       "| uncertain | 3276 | 1678 |\n",
       "\n"
      ],
      "text/plain": [
       "  language  no   yes \n",
       "1 certain   2693 2353\n",
       "2 uncertain 3276 1678"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 显示每个类别研究数量\n",
    "result <- article_sim %>%\n",
    "  group_by(language, replicated) %>%\n",
    "  summarise(数量 = n(), .groups = 'drop') %>%\n",
    "  pivot_wider(names_from = replicated, values_from = 数量, values_fill = list(数量 = 0))\n",
    "\n",
    "result"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "416398b3",
   "metadata": {
    "_id": "DE820DB7BC9A4260A72A97A92D175958",
    "id": "3C66F45AD90B4B958FDA4038ACE45195",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "4. 计算后验值  \n",
    "\n",
    "还记得我们的先验概率为：  \n",
    "- 可重复研究  $P(B)=0.4$  \n",
    "- 不可重复性研究 $P(B^c)=0.6$,  \n",
    "\n",
    "由以上结果可计算似然：  \n",
    "- 大约58.1%(2340/(2340+1687))的可重复性研究使用了确切语言, $P(A|B)=0.581$  \n",
    "- 44.2%的不可重复性研究使用确切语言(2643/(3330+2643)), $P(A|B^c)=0.442$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "778223af",
   "metadata": {
    "_id": "491F9BD4FC4249B2A816ABEC734F72C5",
    "id": "EC3C1C0C7BF14F6B96741542382C3BD2",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "结合先验和似然，我们可以进一步计算分母(边际概率)：  \n",
    "- $L(B|A)*P(B) + L(B^{c}|A)*P(B^{c}) = 0.581*0.4 + 0.442*0.6 = 0.2324 + 0.2652 ≈ 0.498$  \n",
    "\n",
    "最后，我们可以计算得到的后验 (使用确切语言研究中，可重复性研究的概率)：  \n",
    "- $P(B|A) ={\\frac{L(B|A)*P(B)}{P(A)}}= (0.581*0.4)/0.498 ≈ 0.467$  \n",
    "- 在10000项研究中，使用确切语言的研究有4980篇(分母)  \n",
    "- 而现在，我们可以知道，在使用确切语言的研究中，47%(2340/4980)的研究为可重复研究"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "6bd29967",
   "metadata": {
    "_id": "463C518551694032AF27D25FB04F8AE7",
    "collapsed": false,
    "id": "9B71ED3440864C05A789CFF407436F16",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "使用确切语言的研究： 5046 \n",
      "  replicated counts\n",
      "1         no   2693\n",
      "2        yes   2353\n"
     ]
    }
   ],
   "source": [
    "# 过滤使用确切语言的研究\n",
    "usage_yes <- filter(article_sim, language == 'certain')\n",
    "\n",
    "# 计算使用确切语言的总研究数量\n",
    "cat('使用确切语言的研究：', sum(table(usage_yes$replicated)), \"\\n\")\n",
    "usage_yes_count <- as.data.frame(table(usage_yes$replicated))\n",
    "colnames(usage_yes_count) <- c(\"replicated\", \"counts\")\n",
    "print(usage_yes_count)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "594e9feb",
   "metadata": {
    "_id": "4F9AD7BE225841788D37CEEDC528748B",
    "id": "97CF030E46AA401AAAB7C5900068835A",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "同样地，通过画图来可视化使用确切语言的研究的情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "562b1dbf",
   "metadata": {
    "_id": "0AEE39A369D24936AB824323E939DB11",
    "collapsed": false,
    "id": "C10A9981482B4879AE33CDAACFB3DD48",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nM1WTU8bMRC976/wcfewZmb8fW1VVarUA22kHhAHBAkC\nQSgBVPXf99nZr2RDKYJDs4rXnsw8j9+b2Q0rwtUyBuNJnd9W9xWrfG0u1dEZqcuHKnu44IvD\nZqlWc8M24ttnxZq9SfjpF2xf8L2uTk4VaVIXFZP6qvZCv1fH6r7yTqckyhgdvCgRr6PBPVht\nEme3H2o9y+rFoFXBTqRYjIq4RafZSY9HOgVxNiE76xHm8iTfp5sk0t7GjKAtRxWijgnLaHUw\ndtyEY1JsfdnFy6t3QbiWkBF0sDLs4hmbjpsYazTjaK+j6eWoDt0HFQtPIrs8IeNgE0m++4hD\nTNF90BEERfAjvs9cBPxkvx7ceq84bVXgf0dHGFhLOVSTDQMxGYLcCE9YcvIo4tlkBPuwqDiB\niiScuqIfluygCnlxSliLDy5EtbitjlYttUhZLVbVSX3etML1smk51JsG08cGs7OyvmrY1uvm\ndIGaNzp6xxSwxeICcU/FY13GjEEjBmWMOMf4tCg9RnstRQdbqm8EioXYWyVJdBQ7WG7QZqQz\nw9tvBjUAAJWGrWZjEDRYJkEiUQfQM3oNlh1o05O+PwH7mXZIm1KEYlvahyWjTghHc3geCAop\nulz+M+LXd00borH178aEevkwo2io8YECF3AatP1fKLAUtKQwOdxgmQQ5Ars8JWqwvAsFllBw\nycfg3puCvcZ/W5oGzwQBYk6TWSeJgXk/zZqaxXXVsvb4gEevjWNElC5gIipZ065dnrGbZ+y2\nt+fT7ypqDPRjd4iDiVa9l5iknXMTr94y9WIUUnJh4tVbdrxIkGOaenWWqVenxGFpeiFn3bz7\nnntjtUVN4DL323+rokfnsj9AwETDzmeUsPOZKtj5jAJ2PlP9ep9Bvt5nol6fTy/eAT0KzR31\n0nGOZBJrohAxxcm1WE/Jzlt7g7eBxPonxlDflPlVmZ+flcVjg2FZLBcdlRm9LTvhqRRNitbi\nP0nQFo89UwQ9qT+W4LsS91TGdRkfe9qPqz+zcw25CmVuZHN0cmVhbQplbmRvYmoKNSAwIG9i\nagogICA3NjYKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4dEdTdGF0ZSA8PAogICAgICAvYTAg\nPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQgPDwKICAgICAgL2YtMC0wIDcgMCBS\nCiAgID4+Cj4+CmVuZG9iago4IDAgb2JqCjw8IC9UeXBlIC9PYmpTdG0KICAgL0xlbmd0aCA5\nIDAgUgogICAvTiAxCiAgIC9GaXJzdCA0CiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCj4+CnN0\ncmVhbQp4nDNTMOCK5orlAgAGOAFdCmVuZHN0cmVhbQplbmRvYmoKOSAwIG9iagogICAxNgpl\nbmRvYmoKMTEgMCBvYmoKPDwgL0xlbmd0aCAxMiAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNv\nZGUKICAgL0xlbmd0aDEgODQ2NAo+PgpzdHJlYW0KeJzdOWl4FFW251RVb9mqq9PdKehAV6eS\nsCQQSBMwGOkSkjYYgQ4h0h0EOhAguBHouIALjcAQG5GoiA9B4XMbYUAqgBB8LsEZHVR4MuM2\nM+oQtxnHkYGHOvME0/1OVXdCcEbffG/er3eTe+vec84999yz3HtuAggAaRAFFqT5NzS2vF/7\nyBsA1gwApmH+za3Slb+rOQdga6Zx28KWRTfc2XhQALCfATAdWHT98oXHfl5SRRx2A/Dh5gWN\nTemwvgMg9wmCjW0mQOYm9n4af0Dj/OYbWm+t32b2AQyiIcy4fsn8RoAnidegGTQO3tB4awu7\nhv2UxsQPpJZlC1p6nrliMo2PAbCTgIHjAIZSwyqS1gRuJZMxGlgjazEbWI5AvuMlxwUblpcL\nXsE7elS2R/BkCx7hOLfg/Nar2OOGVedWGsrO53B/0lZHmJn4kn2dmwoDYKFSBZn2bKPJlJ3J\nDnRZcwIht32lfaP9pJ2z261WydhijBpPGLuNBjBajWF92EUAk4U1GtPS2EAozel24WzwFQng\nFUvmzpm91OctmV1E4uTo4mgCod3pLR07LicL5TxGsNq8pc4c00gaGDG77e7wKv6go3v3J6fP\ndD/1fu7hrGWLN0aZvN+caL4+Y9tz6MZsFNC9+6Gshmtf1ORnNPk5keS30Q5uUfzZgtE0ACAj\nwySwroFGI7ADIBDKHIB2bsAAC887AyHeaiFRLc4TLuxy4Q4Xtrsw6sIWF4ZdGHDhKBcu7S20\nFRBpOzYo1/eT6vXbUP8tMZ7kjiTBMUTfkQntD2+6acOARxvjT585f/5P+OFzfPu61VuM+Lfn\n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\nXs/ezhpO1yaUplpGqS27xK/UFgz1vxnAyX7JXU2cr6C6148n/af9TNSPzlJHvYB8vbWUr6fs\ntR4B3W7ex8/lV/Icz5fw0/gl/Eb+JJ/gTT6CnebZJYDTAKNONGAntnfMqCsqquk0JSgTMgVm\nqdimFtRprVLboBrbVKhvmBXsQLw3tHbDBpg4qEYtrQuq4UGhGrWJOorWiVLHOqjDCRNDkdZI\n601FWsFkB1qLiiIRrYfaqCiJ03tYFCE0kdEkGrTeBJGiSCtGIq0QaSV4BOdQPxKBCMEjSFOo\nRopS/Ps40QJziBE1rcklIhGaFyE+kdRy4hz4b1YVr0wKZW5kc3RyZWFtCmVuZG9iagoxMiAw\nIG9iagogICA1NDU2CmVuZG9iagoxMyAwIG9iago8PCAvTGVuZ3RoIDE0IDAgUgogICAvRmls\ndGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxdkk1vgzAMhu/5FT52h4qPtKBJCGnqLhz2\nobH9AJo4HdIIUaAH/v3suOqkHcBPkve1jUN26p47P66QvcfZ9LiCG72NuMzXaBDOeBm9Kkqw\no1lvq/Q20xBURuZ+W1acOu9m1TSQfdDhssYNdk92PuODAoDsLVqMo7/A7uvUy1Z/DeEHJ/Qr\n5KptwaKjdC9DeB0mhCyZ952l83Hd9mT7U3xuAaFM60JaMrPFJQwG4+AvqJo8b6FxrlXo7b+z\nMhfL2ZnvIaqm0iTNcwrER+EjcV0mpkB8ED6wphBNwfwo/MiMwsh6yVNznsrJvuN90desr6Vu\nzXV1npgCseTXnF9LD5p70KLXSS/9aO6nFm/N3spILcMsmoo1B/FS4IHcvpxHw3d4n7m5xkjj\nThed5swTHj3e/4UwB3al5xcT8pwnCmVuZHN0cmVhbQplbmRvYmoKMTQgMCBvYmoKICAgMzE4\nCmVuZG9iagoxNSAwIG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1l\nIC9QSU1RTkwrTGliZXJhdGlvblNhbnMKICAgL0ZvbnRGYW1pbHkgKExpYmVyYXRpb24gU2Fu\ncykKICAgL0ZsYWdzIDMyCiAgIC9Gb250QkJveCBbIC01NDMgLTMwMyAxMzAxIDk3OSBdCiAg\nIC9JdGFsaWNBbmdsZSAwCiAgIC9Bc2NlbnQgOTA1CiAgIC9EZXNjZW50IC0yMTEKICAgL0Nh\ncEhlaWdodCA5NzkKICAgL1N0ZW1WIDgwCiAgIC9TdGVtSCA4MAogICAvRm9udEZpbGUyIDEx\nIDAgUgo+PgplbmRvYmoKNyAwIG9iago8PCAvVHlwZSAvRm9udAogICAvU3VidHlwZSAvVHJ1\nZVR5cGUKICAgL0Jhc2VGb250IC9QSU1RTkwrTGliZXJhdGlvblNhbnMKICAgL0ZpcnN0Q2hh\nciAzMgogICAvTGFzdENoYXIgMTIxCiAgIC9Gb250RGVzY3JpcHRvciAxNSAwIFIKICAgL0Vu\nY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKICAgL1dpZHRocyBbIDAgMCAwIDAgMCAwIDAgMCAw\nIDAgMCAwIDAgMCAwIDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1\nMjM0NCA1NTYuMTUyMzQ0IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA3MjIuMTY3OTY5\nIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAw\nIDAgMCA1NTYuMTUyMzQ0IDAgNTAwIDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCAwIDAgMCAyMjIu\nMTY3OTY5IDAgMCAyMjIuMTY3OTY5IDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIz\nNDQgMCAzMzMuMDA3ODEyIDUwMCAyNzcuODMyMDMxIDU1Ni4xNTIzNDQgMCAwIDAgNTAwIF0K\nICAgIC9Ub1VuaWNvZGUgMTMgMCBSCj4+CmVuZG9iagoxMCAwIG9iago8PCAvVHlwZSAvT2Jq\nU3RtCiAgIC9MZW5ndGggMTggMCBSCiAgIC9OIDQKICAgL0ZpcnN0IDIzCiAgIC9GaWx0ZXIg\nL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nFWRT2uEMBDF736KuRT0oomr7h9kD6uwlFKQ3Z5a\neghxcAPFSBJL99t3oqulyWl+vJn3JuHAAl5AzoIUeFYEfAubYh+UJSRv9wEhaUSHNgCA5EW1\nFj4gBQYX+JxQpcfeAQ+Ox6mjMbodJRoIpVBGA4/5Ls4gvDk32EOSTLQzYrgpaWNtuiiaxxgU\nTum+Fg4hrA8pS3O253Rylu7eo2X+XyJ4Ilff2giDPoIPNYFXbJU46R9Kyujm24IWYmve3pHc\nQrbqz0aPA5SlL3w9e0x0QVeiRvR28F7yvuBncGbEpapIVeO3kng5nzykzJ5f0OrRSLSwWT2v\n1CjdHN3SB/xbrxJOfOnusR09/mM5Ev0Cnx5uKAplbmRzdHJlYW0KZW5kb2JqCjE4IDAgb2Jq\nCiAgIDI3NQplbmRvYmoKMTkgMCBvYmoKPDwgL1R5cGUgL1hSZWYKICAgL0xlbmd0aCA3OQog\nICAvRmlsdGVyIC9GbGF0ZURlY29kZQogICAvU2l6ZSAyMAogICAvVyBbMSAyIDJdCiAgIC9S\nb290IDE3IDAgUgogICAvSW5mbyAxNiAwIFIKPj4Kc3RyZWFtCnicY2Bg+P+fiYGLgQFEMDEy\nFzAwMDLwAwnmKJAYB5Al8xXEvQskWOKBhLwSiFUCJKRUQIQNkJA+CSIeQExhBBHMjAqrgGIK\nBxkYAA20ClcKZW5kc3RyZWFtCmVuZG9iagpzdGFydHhyZWYKODM4NQolJUVPRgo=",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/C10A9981482B4879AE33CDAACFB3DD48/t2fa85avnt.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 480
      },
      "image/jpeg": {
       "height": 300,
       "width": 480
      },
      "image/png": {
       "height": 300,
       "width": 480
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 480
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 计算所有语言的 replicated 值\n",
    "language_counts <- article_sim %>%\n",
    "  group_by(language, replicated) %>%\n",
    "  summarise(count = n(), .groups = 'drop')\n",
    "\n",
    "# 绘制图形\n",
    "options(repr.plot.width=8, repr.plot.height=5) #自定义画布大小\n",
    "ggplot(language_counts, aes(x = replicated, y = count, fill = language)) +\n",
    "  geom_bar(stat = \"identity\", position = \"dodge\",width=0.8) +\n",
    "  facet_wrap(~ language, scales = \"free_y\") +  # 创建子图\n",
    "  scale_y_continuous(expand = c(0,0),limits = c(0, 4000)) + \n",
    "  scale_x_discrete(expand = expansion(mult = c(0.65, 0.65))) +\n",
    "  labs(y = 'Count') + \n",
    "  papaja::theme_apa() +\n",
    "  theme(legend.position = \"none\",strip.text = element_text(size = 16))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "daa97807",
   "metadata": {
    "_id": "E8021516E6B64E539FC5521887F739E6",
    "id": "28487B0960074EEDA8F2F2A7DE02256B",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 总结 (Recap)  \n",
    "\n",
    "回到之前的问题：如何预测研究的可重复性？  \n",
    "\n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjq96jfv8f.png?imageView2/0/w/960/h/960)  \n",
    "\n",
    "\n",
    "\n",
    "- 哪些信念可以作为先验概率？  \n",
    "- 信息的哪些属性可以作为数据？  \n",
    "- 如何结合先验和数据更新信念 (贝叶斯公式)。  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b16df7c2",
   "metadata": {
    "_id": "9116A7CE222F4BDE8B8E3607286E0966",
    "id": "A3F1D5B27A06446C8958BFB8DF018351",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## Part3 随机变量的贝叶斯模型"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dbf438f6",
   "metadata": {
    "_id": "E3B392ED97F84AE2A0B122A3581A9C4E",
    "id": "A3BE199343CD405D8C49B2D9D6BE43D2",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**随机变量 (random variables)**  \n",
    "\n",
    "在之前的分析中，我们讨论的是对某项研究的“可重复性”这样一个单一事件。  \n",
    "\n",
    "同样的逻辑可以应用于更加抽象和一般性的**随机变量**进行分析。  \n",
    "\n",
    "假设为了研究可重复性问题，一个有能力且资金充足的研究团队计划进行一系列可重复性实验，他们希望知道这些实验成功重复的比例是多少。  \n",
    "\n",
    "首先我们来了解一个概念，胜率或成功率  \n",
    "\n",
    "* 想象你玩斗地主，有五局三胜，七局四胜这一说，一轮玩下来，就会出现胜率。  \n",
    "* 然而，胜率并不是一成不变的，它会随着每次游戏的输赢而变化。  \n",
    "* 在每一轮开始前，你并不会知道你这次的胜率是多少  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9fbd83ce",
   "metadata": {
    "_id": "3FD06461908142E698C9D59BBF2E0D18",
    "id": "FC6767B0F72949ADBF7444F24797E617",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "在我们的例子中，假设计划对6项研究进行重复实验。  \n",
    "- 假设该团队对于任何研究成功复现的成功率为$\\pi$，$\\pi$是**未知的且可能会变化**，所以$\\pi$是一个随机变量。  \n",
    "- 根据团队先前的经验以及心理学研究的现状，我们猜测其成功复现的成功率为 $\\pi = 50\\%$。  \n",
    "- 他接下来可能成功复现的次数$Y$可能是0，可能是1，也可能是6，可以有7种可能的成功复现次数，$Y \\in \\{0,1,2,3,4,5,6\\}$ "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7574369f",
   "metadata": {
    "_id": "5097DA54E0F443E7A8E87A5310133378",
    "id": "8840C67FD14A4848B067EC0A0A2489BC",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "🤔虽然我们知道他们的平均成功率为 $\\pi = 50\\%$，但问题在于，对于每一种复现成功的次数（1 ～ 6），其可能性分别是多少呢？ "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1460de4d",
   "metadata": {
    "_id": "713A6C44D59C4EDAB7EE7E6B0770503F",
    "id": "9208797D6C9B420282E9FCC20E88601F",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**二项式模型**  \n",
    "\n",
    "由于每次重复实验，结果只有两种可能：成功 vs 失败。  \n",
    "\n",
    "该团队总共进行6次重复实验，我们想要知道的是成功1次，成功2次，成功3次，...，的概率。  \n",
    "\n",
    "对于这种情况，我们可以用二项分布来分析。  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4dca83a7",
   "metadata": {
    "_id": "D03769BD6D2B4C808F77AC844D213504",
    "id": "D8827029EE61416395FC54DAABB6EA36",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "该团队的成功率为$\\pi$，$在\\pi$下某成功次数发生的概率可表示为：  \n",
    "\n",
    "$$  \n",
    "f(y|\\pi) = \\binom{n}{y} \\pi^{y}(1-\\pi)^{n-y} \\quad\\quad for\\;y \\in \\{0,1,2,...,n\\}  \n",
    "$$  \n",
    "$$  \n",
    "\\binom{n}{y} = \\frac{n!}{y!(n-y)!}  \n",
    "$$  \n",
    "\n",
    "$\\pi$ 表示成功的可能性，$y$表示在$n$个试次中成功的次数，二项模型含有的前提假设是：  \n",
    "\n",
    "(1) 所有试次发生都是相互独立的  \n",
    "\n",
    "(2) 在每个试次中，成功的概率都是一个固定的值$\\pi$  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "13b2da66",
   "metadata": {
    "_id": "B192E3FF5B4F439391B43E16A0B1A2A7",
    "id": "520F9BD4784C4EACBD819E724FFCBD69",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "成功次数为0~6 的可能性可以分别写成：  \n",
    "\n",
    "$$  \n",
    "f(Y=0|\\pi=0.5) = \\binom{6}{0} 0.5^0 (1-0.5)^{6}  \n",
    "$$  \n",
    "$$  \n",
    "f(Y=1|\\pi=0.5) = \\binom{6}{1} 0.5^1 (1-0.5)^{5}  \n",
    "$$  \n",
    "$$  \n",
    "...  \n",
    "$$  \n",
    "$$  \n",
    "f(Y=5|\\pi=0.5) = \\binom{6}{5} 0.5^{5} (1-0.5)^{1}  \n",
    "$$  \n",
    "$$  \n",
    "f(Y=6|\\pi=0.5) = \\binom{6}{6} 0.5^{6} (1-0.5)^{0}  \n",
    "$$  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0c70ed33",
   "metadata": {
    "_id": "8D0F65AFF8784B9AA6D5DDC0D0B530D8",
    "id": "5113C7B13F36454192A6EDB9EA6EE148",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "我们可以使用代码帮助计算  \n",
    " `st.binom.pmf(y, n, p)`。其中 p 对应公式中的 $\\pi$。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "447c1525",
   "metadata": {
    "_id": "9B6ABDBAC2184D748BC14210FEC09798",
    "collapsed": false,
    "id": "6D48D849AC154DAAB4CBD723310E1985",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "# 安装和加载包\n",
    "options(repos = c(CRAN = \"https://mirrors.tuna.tsinghua.edu.cn/CRAN/\"))\n",
    "if (!requireNamespace('pacman', quietly = TRUE)) {\n",
    "    install.packages('pacman')\n",
    "}\n",
    "pacman::p_load(\"tidyverse\",'papaja','gridExtra')\n",
    "options(warn = -1)  # 抑制警告"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "179fd631",
   "metadata": {
    "_id": "964344C1AE4D492EBEE44169E13DAD6F",
    "collapsed": false,
    "id": "BD6D117BC9BF4D518FECF1B4CCC94830",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " successNum     Prob\n",
      "          0 0.015625\n",
      "          1 0.093750\n",
      "          2 0.234375\n",
      "          3 0.312500\n",
      "          4 0.234375\n",
      "          5 0.093750\n",
      "          6 0.015625\n"
     ]
    }
   ],
   "source": [
    "y <- c(0,1,2,3,4,5,6)  # 成功次数 \n",
    "n <- 6                # 重复研究总次数\n",
    "p <- 0.5              # 假设的成功概率\n",
    "\n",
    "# 计算概率值\n",
    "prob <- dbinom(y, size = n, prob = p)\n",
    "# 创建结果数据框\n",
    "result_table <- data.frame(successNum = y, Prob = prob)\n",
    "\n",
    "# 显示结果\n",
    "print(result_table,row.names = FALSE)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "50345ecf",
   "metadata": {
    "_id": "0E0EE993EC7C4246864A50147A8E2736",
    "id": "8323B91A44AC492EBFAC43DBF919D370",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "显然，当团队的成功概率为 0.5 时，其在六次研究中获得 *y* = 3 次成功的概率最高(*p* = 0.3125)。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "c7c3366b",
   "metadata": {
    "_id": "41D47C047ABC4817902F877AC116E071",
    "collapsed": false,
    "id": "8A5715B04BB346459BD2CBC53E8D12EE",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nLVWTWvcMBC9+1fouHuIOh8afUDIIVAKgR7SLvSQ5FA2\n3UDoFpIeSqA/viPbkh3ZTaEkLLvsPM+MnsZvRkID+jlB/WEPZn/sHjo0+fN4Z959BXP3s8se\nEnzv8PjNHJbAEPHpg0GLnpM++qXYhX7vu6sbAxbMbYdgPpom9HN3aR468TaiN2JTCEaQLQEb\nBrKonur1xfxYkPpXzKHPnNhQioYNgkWhkgxscAL6YPlHNzGuoKmYkwTdC6zuJTkbKOQFbEA0\nxwIwxH6x7+P20HtDgspCwuuzQB+sJ8krWJe80ihIy4M4mcxFq+Ho9YmQAyvEeQkrEJVIQVoi\njGQQUyYS0+sTYVWDo34JS6qAY0UWRKK8ZUU4ess0K8gItDScxDcUiBMtg1Z7EkhBWh7C+Ibt\nIqwuOO+XgrQ8oB8TzwcQ5KV0WYje41/Hi6amiPOWHAAGFYCwSXlAxdYs7vsCdCobHSw85WvM\n4n8+ca0kMWiSOO/HAnhLHFUOzkI/Elp7CNgXpNMG8jaIqxkaswas0SCnSUJ81o4jouF5YLC3\nycvCHP33BekUQqtTdsrYmCVgjQaj70f0vBlHhDSe85hKNnpe2mPEviBKBJ0VkVnS1i4hq1R0\n2MQgz/pxRIYScCQbPC3MusERqRWZMjbmSxVxXpOomGb9WJFBEU7EzgRSzfK6B2CSR41v7RcF\nIqxZAj3rxwEp7SEUtbxpYU/6H5GudsiUtLWnlpldEvKkGE/yMgSUxvxozzMBLAMmbfvlH93Q\n+U5734aUIsh4m6km9cLpJwCiTRQzh92xe3c4gRPQC8Xu0G10fmx398pFrCSJ4MzuNqO4itKE\n+nx2DCiv+rpVX8no+51ui0z55vcBNrplGebDcXAhF7SWaXIpwOSCMeikksmlADMX0icuzlxG\nYHJRGTt0k8doTw7DK1p7Y1Vki5cbtNzNnaApRLlGaXPrkbJ+r6pXi+q0dtko5211WjmA6yFU\nndaOpf+XoB4pgbzoHGEKNkYJjpYSzJLIl5SUkuQUWSm0Bro10BdFlSbPhGhkkvevUiTMo4l1\nJOiYgOQWHJ4GseaAkz5YCxI5RZcPnP5AcuBz1NXmsKW4ud48mS2Fze8twsZsb3YXQz4c8l2d\nnlE8BQA8q4/Gpa42W+LN9baPUdqX3R99koLmCmVuZHN0cmVhbQplbmRvYmoKNSAwIG9iagog\nICA4NzEKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4dEdTdGF0ZSA8PAogICAgICAvYTAgPDwg\nL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQgPDwKICAgICAgL2YtMC0wIDcgMCBSCiAg\nICAgIC9mLTAtMSA4IDAgUgogICA+Pgo+PgplbmRvYmoKOSAwIG9iago8PCAvVHlwZSAvT2Jq\nU3RtCiAgIC9MZW5ndGggMTAgMCBSCiAgIC9OIDEKICAgL0ZpcnN0IDQKICAgL0ZpbHRlciAv\nRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicM1Mw4IrmiuUCAAY4AV0KZW5kc3RyZWFtCmVuZG9i\nagoxMCAwIG9iagogICAxNgplbmRvYmoKMTIgMCBvYmoKPDwgL0xlbmd0aCAxMyAwIFIKICAg\nL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgNzA0MAo+PgpzdHJlYW0KeJzVN3t4\nE3W258xkkvSZZ5uBAJl0aEFTLDQUKFYytE0oFqEPqkkRmkKBwqoUU1+s0gKiNcCWRxdFuMJV\nll1YoFMetqgsFVc/XeUTFd3vXtyluuh1FbZeRF0FkntmkpbCp+5+3977x/0lv5nzPud3zvnN\n/AYQABKhGVgQ5t1d23A669/WEWEvAFM97/5G4db/LP0eIEVPeMuChoV3L6993gRgWA+gO7Tw\nrocWrHnpuwyysFcxUj+/ti4J1nQA2IqJNq6eCClt7FrCHyZ8eP3djQ+On8DdT/gOwgvuWjKv\nFmDKg4R/SLh0d+2DDexy9iwAP4RwoeHe+Q1X9k+ZSngBAFsEDJwA4HK5FRStDhxSCqPlWC2b\noOdYDZE8J3JOmMyYn29ym9xjRlucJqfF5DSd0My/tHUae4Jb8X0Tl3fJpvkrGSdbZdFzGpHb\nDElgg5GS1axNBi3wgxIMoUCCjk0LBdhB4HEB73ENMIpGRsxgTEazM9fM9sHuXLNG/O6rry6e\nR/jufOe6Z3dt2LRjexvzcmR7ZC3ei/PwZ7g4sjGyBcegOXIh8mbkVORzHAIILwLgcjhNwduk\nRBZAwwFunQWQo/pUHLrz3GkvvnL6tBIzwjYSMdD6E8ElWTV6hklK5jQaVqvVI2BjAHiK2ARu\n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\nUl05I5XnTfBJ5ZkjfW+X4VSf4Cghy1NotvvwjK/XxzT7MD03rcqEhipjrqGKTqNVCOhwGDyG\nGkOTQWMw5BhmGJYYWg1nDFGDzkO0XgO7BHAGYHM6ctiF6ztmVrpcpV26KJ1sdGWzZGyRMyuV\nq1ReLWtbZKiqnuXvQPxFYPW6dVA4tFTOrfTLwaGBUrmOAEkBmgkwDu1Ih8JAqDHUeJ9LGRgD\noNHlCoUUCBXMFeOpELpCxCYxUiKk8T4IuUKNGAo1QqiR6CGcQ3AoBCGih5BUaIZccfv9lsjB\nHDJEl8aYi1CI9EJkJxR3x8+B/wEsf1w+CmVuZHN0cmVhbQplbmRvYmoKMTMgMCBvYmoKICAg\nNDQwNAplbmRvYmoKMTQgMCBvYmoKPDwgL0xlbmd0aCAxNSAwIFIKICAgL0ZpbHRlciAvRmxh\ndGVEZWNvZGUKPj4Kc3RyZWFtCnicXZHPbsMgDMbvPIWP3aFKQtu0k1CkqbvksD9atgdIwOmQ\nFoIIPeTth3HVSTuAf3z2lxhTnNvn1tkIxXuYdYcRRutMwGW+Bo0w4MU6UUkwVsfbKe966r0o\nkrlbl4hT68ZZKAXFR0ouMayweTLzgA8CAIq3YDBYd4HN17ljqbt6/4MTugilaBowOKbPvfT+\ntZ8QimzetiblbVy3yfZX8bl6BJnPFbekZ4OL7zWG3l1QqLJsQI1jI9CZf7lqz5Zh1N99EGpH\npWWZglASM6eQ9Ir1ilgyS+Id8454z7wnPjAfiGvmOvHxMXMKQtWs16TLE//rRMw9SOrhqLle\nk87eFOgit47pSjT7+6z0NYQ0pvxAeT40Gevw/oZ+9uTK6xc4T43ICmVuZHN0cmVhbQplbmRv\nYmoKMTUgMCBvYmoKICAgMjkwCmVuZG9iagoxNiAwIG9iago8PCAvVHlwZSAvRm9udERlc2Ny\naXB0b3IKICAgL0ZvbnROYW1lIC9OWk1aU1ArTGliZXJhdGlvblNhbnMKICAgL0ZvbnRGYW1p\nbHkgKExpYmVyYXRpb24gU2FucykKICAgL0ZsYWdzIDMyCiAgIC9Gb250QkJveCBbIC01NDMg\nLTMwMyAxMzAxIDk3OSBdCiAgIC9JdGFsaWNBbmdsZSAwCiAgIC9Bc2NlbnQgOTA1CiAgIC9E\nZXNjZW50IC0yMTEKICAgL0NhcEhlaWdodCA5NzkKICAgL1N0ZW1WIDgwCiAgIC9TdGVtSCA4\nMAogICAvRm9udEZpbGUyIDEyIDAgUgo+PgplbmRvYmoKNyAwIG9iago8PCAvVHlwZSAvRm9u\ndAogICAvU3VidHlwZSAvVHJ1ZVR5cGUKICAgL0Jhc2VGb250IC9OWk1aU1ArTGliZXJhdGlv\nblNhbnMKICAgL0ZpcnN0Q2hhciAzMgogICAvTGFzdENoYXIgMTI0CiAgIC9Gb250RGVzY3Jp\ncHRvciAxNiAwIFIKICAgL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKICAgL1dpZHRocyBb\nIDI3Ny44MzIwMzEgMCAwIDAgMCAwIDAgMCAzMzMuMDA3ODEyIDMzMy4wMDc4MTIgMCAwIDAg\nMCAyNzcuODMyMDMxIDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1\nMjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc3LjgzMjAzMSAwIDAgMCAwIDAgMCAwIDAgMCAw\nIDAgMCAwIDAgMCAwIDAgMCA1MDAgMCAwIDI1OS43NjU2MjUgXQogICAgL1RvVW5pY29kZSAx\nNCAwIFIKPj4KZW5kb2JqCjE3IDAgb2JqCjw8IC9MZW5ndGggMTggMCBSCiAgIC9GaWx0ZXIg\nL0ZsYXRlRGVjb2RlCiAgIC9MZW5ndGgxIDQwMDQKPj4Kc3RyZWFtCnicrVZrcBvVFT53Vy8/\nJTm2EYiwq2zsOsjGieWExDjWxrI2Mg5Yfqhd2TSWEts4IcSmMhTCw3IhYJSkTsDNlIaZ5Ael\nJBB8ZROsMNC49E+hmGSmMExLaQwFCjSpWzphKMZRz13JzmMKf8od7b3nfOd17zlnVxcIAGRA\nFHiwbL6rX7zxTw1fAZARAG6ou+/W2x8Iv2gF0F0NYHzh1m33dD8TH5hFiyfx+bKnK9yZBbvi\nAFmnkF/Vg0DOCD8AkG1CfmnP7f13Z+0kaJtdirxpW+/mMPquQ74S+ezbw3f38XfwHyIpIy/2\n/airb+759fXIhwB4D3AwBaCv0A/i7owgyDmcQc8b+AyTntch5J4qn7LmkTVrrC6ra8XyRQ6r\nY5HVYZ3Sdc0e2MBP6Qe/GtCvnL1C9yk6BwKNyTN6p64KBLhRLsnIzLTqc6/kFxcW8rm86DA7\nyh1cBm/T5xbk+oMF5swCuNofhEJwO8Hmdjut4HKRjo0/tOZdoYWzulxaUP2S4pVWR0E+Z5RW\n5a0lSwzGlTXE5SiQrPmFrusLDLruSPf57ZXXvVxZVXvoKtttlbqiz66t/P5N+Xc8zL3l++i8\n89ib5OTr/kLzrmzrg3MtG7ymwXz9G/o34H48dQHco82XDDxBPvwYIHmGcRfm8z+A73SYUssL\n8AqMwqFLREPwAM7PXYKdgN/Csxp1APZ8i9vjcCRNjcAT8Mg36m2FB9HPUxj/wggheg/8HCMn\n4FdY0iXEhVFvS0vfhdf+tyvyPnkNHoNnUPMxmMD5AHb3vdzn8BjXDNu5d/hB+Ak8imc8SLbA\nMOqH4CnSDhsRTY2N0AW9lzmNwV74JezAN2dh6AeT/4acr8dx54+in/2wBe7ASpq/vib5OVTq\nPoac82/BCV7AvT8PxzSTwXlbo4/fyr3IcXOPI7MPbsUnTP6I+9zDr/uWbP7fwzCo64F83e9Z\nDyX/cH4A9/4uVuglzMZJeX17W1ANtLY0N/kbb75pQ8ON9b71irfOU7tOdtesrb6has3q61et\nXLG8/Lqy0pLvFRctlZY4BFu+1WLOzcnKzDAZDXodzxEoFSkJeSlfJFqVsOSVwr6yUtFr66kr\nK/VKSoiKYZHioiuWfD4NksJUDIm0GJfwRXCIyqjZfZmmnNKUFzSJRayGahZCEulUnSQmSFuT\nivSeOiko0rMafZNG64o1JgcZhwMttF2x3YpeqtzVE/OGcI8knpXpkTxdmWWlEM/MQjILKVoi\n9cVJSQ3RCK7EWxXnwJTDwuJJveFO6m9SvXV2hyNYVlpPc6U6TQQezSU1eKhRcyluYVuHXWK8\ndDK2O2GBTSFndqfUGb5FpXwYbWO8NxZ7hFqddJlUR5ft+NCGJ++ipVKdlzqZ14bmhTgNF0IS\nqi+ySGLsHOBxpLNnLkXCacRQZDkHjKSch5Jm1cGGXcFcx2KKJCqxUCycSEY3SaJFisWzs2N9\nXkw3+FV0kUi+tMtOld1Bagn1kKpg+uhKcwNd1NSuUq5IEXvCiODPLTlW2x3WBR3/N4kB04LJ\nwQw7HCwNuxIybEKGRpvUFC/CJvsYyOXOIOVCTDI5LykIMEl0XrJgHpKwtg0taozqiuo7JS9m\nfFeYRjdhd21lhZEsNPcLu0OK5VnFNeVBTVfEXdV3bhGpvhiThFYXG2DfMJOYRWNyv0gtZ+0Y\noNiaJ66R0A3z45W8ofTvrh4bOhAx0T5nqhFaVSrXISGH0xXzxpeXo0U4hAXbUqcVk5ZLfTRf\nql2oLtuWd0uLqpmkzWi+h0Joc9qKlnu190r0xkJ1qS0wX1KTehxcyel4pWgfd0ElBOuYcqEH\nu6zYG1M7u6kQsnfie9ctqnYHlYNY4aCkdgVZ22GGlk3bteYIar3Sqja0SA1Nberq9EZSAuZO\nV+S9zI2k2lNusAGpqcgkqpydD6KiBQFRQUKqrcaZGotM+Fgw4RrKGre2WlSJHea1cRt0mejt\nqkvrMf4Sp3rWTh7fvDcDY9GPx2d3BB2pUVbKoVhMB0YLE0uqb16EnykUmLA/PT4NYrm0saYX\nValLCko9IpX9KjsbS4+W5XQytJyna9V6CXdRsjBN4EDxPMOSSRWn/eLk0vUav8D6LhPXz4vF\nmElqaIkx51LaIeDO6ymwFpZXW+3at4C90BJ+e0ULvtLaCx2LyzJ7mXuqmBOpvjMmtajVmjZ+\nT+6372Cx8qCBNLTWlpXip602LpGhprhMhlra1OMWvK8NtapjHOE8odpgfCnK1OMigKyhHEMZ\nyBiRMcxTMzImTd9+XAaIalKdBmj85gQBDTPNYwQ2J7gUZkkFKtYCyXg33JzQpSTyvLYOMVMK\ni2qYNuLAUiZn6mWTnCFnczmcPU4YNIbIS3j/zSAwnk1yiD2OVs0anCDReIZsT2lEUUNO7XAo\ncCF0oE0dzwY002YMVMsGtoutB4uNfytesZM1yn3BnlgoyF42KMTS4I9QItVgmaQa3Ighm2ZK\nXbU0S6pluJvh7hRuYLgRW5QUEjSPYu39lLAOaFcd+EqKV71mj1nOskoF8aMSs3xUBuw+z135\nxJsPvZrZYa4+B0LqHvc7+T+/YOt7915XOPv03OOZW43vALvkcZoFux+Dseb8zeDJfGH26a92\nZG5N4xcGZwCY0u+ExjS/AZ8vU/FIM7TCLWBAbxYoRwq4pzgd1oOsc2Dy3EDIGgiQmvRaS2S8\nwwpkHa4CrjeAi1QhvhpXlINMjOhX0OaDRCcfIZNzZHSOwBzJbJwl4iw55y8RPldKhH8p1wr/\nVJxCx8zADGeeaZzpmBmeGZ3RZ3304TXCXz9QBPMHRP5AKRTen1aEk9Onp2emeXnatUqZVmzC\nP84mhbPkk8AZ398Dn1VA4NNPPgn8zQeBjyEpvLf2dOA04QN/WcsH/swnBfPbwtucNsmv2+zK\nyVfJK5PVwm/8xcLLvy4RkseJP9GXiCb4RHJSTibyKhRhwj3RONE7MTBxcGJ0wmh7kfSNHRqj\nY7x5jOw9RugxYj5GTOZx9/jMOB+leylH6SQ9RfnyUfcod+goPcpNHj11lCt/zv0cd/BZMnnk\n1BGu8fDwYa78cO/hE4eTh3VPHlgq+A+Q3v3kxH6yX1ks/GzkCsE8IowMjAyPJEf0y/fJ+7jo\nPtI3HB3m9g6TyeFTw1zj7o7dvbv5h5WkcHAneejBFUJ/xC1E8CC926uF7cpK4SpiC1zpsgWM\nLj5gwKOHUNaBzy3KCqG9zSe04bqoIi+gx/ToKvjANp5k89X8Bn4bfx+vn2lKyp1NnNy0crUi\nNxWVKCf9pF4RBR96Xo/PqEJOKzMKF1VIYUVBwErMAUuFOYC3xAABIghmt7nDPGDWmc3l5kZz\nr3nYfNqcNBvdiM2Y+V4gjUCihURPEmRvvLXF6WxIGJN44zD62ykZokUtbJab2qhhiEKgrV2N\nE/LT4M49e6B2cQOtaFFpaHGwgXYiITMiioRlcbwQaoOR/kj/nU42SIqAfqczEmEUYZwzJdMo\n4oygGNXQCJn+OyHijPSTSKQfIv2IR8hGpCMRiCAeIWiCT8SZ9r/gCQNsREc49adCRCJoF0E/\nkXQ420b4LzTA+uYKZW5kc3RyZWFtCmVuZG9iagoxOCAwIG9iagogICAyNjcxCmVuZG9iagox\nOSAwIG9iago8PCAvTGVuZ3RoIDIwIDAgUgogICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+Pgpz\ndHJlYW0KeJxdkMFqwzAMhu9+Ch27Q3HSXUNgdJcc2o2lfQDHljPDIhvFOeTtp7ihgwlskP7/\nM7+lz917RyGD/uRoe8zgAznGOS5sEQYcA6n6BC7YvHfltpNJSgvcr3PGqSMfVdOA/hJxzrzC\n4c3FAV8UAOgPdsiBRjjcz/1j1C8p/eCElKFSbQsOvTx3MelqJgRd4GPnRA95PQr257itCeFU\n+voRyUaHczIW2dCIqqmkWmi8VKuQ3D99pwZvvw0Xdy3u6tVWxb3PN2775DOUXZglT9lECbJF\nCITPZaWYNqqcX0PTcJUKZW5kc3RyZWFtCmVuZG9iagoyMCAwIG9iagogICAyMjQKZW5kb2Jq\nCjIxIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvcgogICAvRm9udE5hbWUgL1RaWUFU\nRStMaWJlcmF0aW9uU2FucwogICAvRm9udEZhbWlseSAoTGliZXJhdGlvbiBTYW5zKQogICAv\nRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtNTQzIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGlj\nQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAvRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQg\nOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0ZvbnRGaWxlMiAxNyAwIFIKPj4K\nZW5kb2JqCjIyIDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9TdWJ0eXBlIC9DSURGb250VHlw\nZTIKICAgL0Jhc2VGb250IC9UWllBVEUrTGliZXJhdGlvblNhbnMKICAgL0NJRFN5c3RlbUlu\nZm8KICAgPDwgL1JlZ2lzdHJ5IChBZG9iZSkKICAgICAgL09yZGVyaW5nIChJZGVudGl0eSkK\nICAgICAgL1N1cHBsZW1lbnQgMAogICA+PgogICAvRm9udERlc2NyaXB0b3IgMjEgMCBSCiAg\nIC9XIFswIFsgNzUwIDY4OS45NDE0MDYgXV0KPj4KZW5kb2JqCjggMCBvYmoKPDwgL1R5cGUg\nL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAgIC9CYXNlRm9udCAvVFpZQVRFK0xpYmVyYXRp\nb25TYW5zCiAgIC9FbmNvZGluZyAvSWRlbnRpdHktSAogICAvRGVzY2VuZGFudEZvbnRzIFsg\nMjIgMCBSXQogICAvVG9Vbmljb2RlIDE5IDAgUgo+PgplbmRvYmoKMTEgMCBvYmoKPDwgL1R5\ncGUgL09ialN0bQogICAvTGVuZ3RoIDI1IDAgUgogICAvTiA0CiAgIC9GaXJzdCAyMwogICAv\nRmlsdGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxVkU9rhDAQxe9+irkU9KJJ/NO6yB5W\nYSmlIG5PLT2EGNxAMZLE0v32nehqKSGB+TGT915CgQQshRxPoFkRsAzSogyqCpK32yQhafkg\nbQAAyYvqLXwAAwIdfC6o1vPogAbH4zLRGt3PQhoIBVdGA43pU5xBeHVusockWehg+HRVwsba\nDFG0XmMkd0qPDXcSwubACMtJSSluRsr3aLv/zxE8oKofbbmR3oI3tYBX2St+0j/olODKHwsM\nRHa/o8N2C9nefzZ6nqCqfOHrVWOhG7ogNXy0k9cStw0/gzOz3Koauxr5rYTszicP0bPnnbR6\nNkJaSHfNCw4Kt1q3+AH/4tXc8S893NPh49/DYdMvnNVuKAplbmRzdHJlYW0KZW5kb2JqCjI1\nIDAgb2JqCiAgIDI3NAplbmRvYmoKMjYgMCBvYmoKPDwgL1R5cGUgL1hSZWYKICAgL0xlbmd0\naCAxMDMKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL1NpemUgMjcKICAgL1cgWzEgMiAy\nXQogICAvUm9vdCAyNCAwIFIKICAgL0luZm8gMjMgMCBSCj4+CnN0cmVhbQp4nGNgYPj/n4mB\nm4EBRDAxMt9kYGBk4AcSzIdBYpxAlqQ1kNCsBRIskSDiDpDQUgSxPgEJsTYQMQ9ISIC0SagB\nCWk3IKEmCiJ0gYR6DIgoBhIa7RCLGEEEM6P2CqCY9n4GBgDSOg2vCmVuZHN0cmVhbQplbmRv\nYmoKc3RhcnR4cmVmCjExMTk5CiUlRU9GCg==",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/8A5715B04BB346459BD2CBC53E8D12EE/t2f2wadb1f.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 480
      },
      "image/jpeg": {
       "height": 300,
       "width": 480
      },
      "image/png": {
       "height": 300,
       "width": 480
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 480
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制图形\n",
    "options(repr.plot.width=8, repr.plot.height=5) #自定义画布大小\n",
    "ggplot(result_table, aes(x = successNum, y = Prob)) +\n",
    "  geom_segment(aes(xend = successNum, yend = 0), color = 'gray', size = 1) +\n",
    "  geom_point(color = 'black', size = 3) +\n",
    "  labs(y = 'f(y | π)', x = 'y') +\n",
    "  xlim(-0.2, 6.2) +\n",
    "  scale_y_continuous(expand = c(0,0),limits = c(0, 0.5)) + \n",
    "  papaja::theme_apa() "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d32d47ac",
   "metadata": {
    "_id": "8041DF2125114C788A52694D4B45784E",
    "id": "02B1DDD9C5D0403F9AB743AF2181BD1D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "\n",
    "**概率质量函数(probability mass function, pmf)：** 用来描述离散型随机变量在各特定取值上的概率  \n",
    "\n",
    "在上图中我们看到，成功次数y在不同的取值上的概率不同。  \n",
    "\n",
    "* 由于$y$的个数是有限的，并且是随机发生的，我们把$y$称为离散型随机变量，而$y$发生的概率$f(y)$则被称为概率质量函数  \n",
    "\n",
    "\n",
    "对于离散型随机变量$Y$，$Y$各取值的概率由$f(y)$指定：  \n",
    "$$  \n",
    "f(y) = P(Y=y)  \n",
    "$$  \n",
    "\n",
    "并且有如下性质：  \n",
    "\n",
    "* 对所有y的取值来说，$0\\leq f(y) \\leq 1$  \n",
    "* $\\sum_{all\\,\\pmb{y}}f(y) = 1$，y取值的所有概率之和为1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "e5d9c6ba",
   "metadata": {
    "_id": "05FC709EDC61405080FAEF84FC525F6E",
    "collapsed": false,
    "id": "1C3410B9B9F54C329BA31BCFBC5F8962",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "1"
      ],
      "text/latex": [
       "1"
      ],
      "text/markdown": [
       "1"
      ],
      "text/plain": [
       "[1] 1"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sum(result_table$Prob)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9f77f551",
   "metadata": {
    "_id": "AA8EDB178D4B4E89A7544F8DE8489F30",
    "id": "812EA6E82F6040A8A7C3A1CE27B97DD8",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 二项似然函数(The Binomial likelihood function)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5c7508d2",
   "metadata": {
    "_id": "49B4DD60B3174E9297B696DAEC178564",
    "id": "AC11DEB13C0D43A587C661F3BFC5CF1B",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**不同的信念**  \n",
    "\n",
    "虽然我们认为该团队重复6个实验的成功率是50%，但并非所有人都这么认为。    \n",
    "\n",
    "- 乐观派认为该团队的成功概率为 0.8，表示对实验成功复现持高度信心。  \n",
    "- 悲观派则认为该团队的成功概率仅为 0.2，意味着对实验成功复现不太乐观。  \n",
    "\n",
    "成功的概率影响着他们对研究复现结果的预期：如果团队的成功概率高，那么6次研究中成功复现的次数会更多；  \n",
    "反之，如果成功概率低，那么研究复现的失败次数就会更多。  \n",
    "\n",
    "我们可以计算持不同信念的人心中，该团队在6项研究中成功复现的次数的概率分布并画图。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "f3132f93",
   "metadata": {
    "_id": "09496DE9C3554C5899C273188217941F",
    "collapsed": false,
    "id": "2291CF9674604AF6B8A851AF1D1F85BE",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " successNum  neutral optimisist pessimist\n",
      "          0 0.015625   0.000064  0.262144\n",
      "          1 0.093750   0.001536  0.393216\n",
      "          2 0.234375   0.015360  0.245760\n",
      "          3 0.312500   0.081920  0.081920\n",
      "          4 0.234375   0.245760  0.015360\n",
      "          5 0.093750   0.393216  0.001536\n",
      "          6 0.015625   0.262144  0.000064\n"
     ]
    }
   ],
   "source": [
    "# 定义成功次数和总试验次数\n",
    "y <- 0:6  # 成功次数\n",
    "n <- 6    # 研究总次数\n",
    "\n",
    "# 定义三种成功概率并计算似然值\n",
    "p_values <- c(0.5, 0.8, 0.2)\n",
    "likelihoods <- sapply(p_values, function(p) dbinom(y, size = n, prob = p))\n",
    "\n",
    "# 创建结果数据框\n",
    "result_table <- data.frame(\n",
    "  successNum = y,\n",
    "  neutral = likelihoods[,1],\n",
    "  optimisist = likelihoods[,2],\n",
    "  pessimist = likelihoods[,3]\n",
    ")\n",
    "\n",
    "# 输出结果表\n",
    "print(result_table,row.names = FALSE)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "b2c5a3b9",
   "metadata": {
    "_id": "DC62F21B049746FDA1E4D7D3062A8A9F",
    "collapsed": false,
    "id": "D791ADF13FCE4F29BF253917E4B93051",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "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\nLf1sZ3vsQDSyfMCqd5CR0shHbcpXsE6uXXpBWmPfjPbyQ419RFuypTsVKfQmIiuv6U6VK3cp\nSKM7zWgvP0R3EkKfiu/6Ji4Ik74kZaY3vdwYXUEaCWxGe7mRwHyrTHqd1wOvH+UJLfCGhTNQ\nWDcmpODuxUqpC3Bi0l3tdSLrl2WE+DrvbBJ67+X7WrvmBSlvXmBo+eLWy/W1SkHam5hmtJd5\nyG3xMWQf08jH//Ci4z0tYp3+hr3VPfWf26FKSboG6Q0/CEn1f6SRQestjey3gVZdlBqNZKU1\njSxKlUayzopGskqlkVVnRSOLUqWRrDOikfszUxL377Fvjdxfto+Ng46zdl1Va9SH1V6kao26\nk1qjm9agar9BcKHevjseGVFonsAjPb0feH88MiIT2yGP/PJ8UW75nLjwxoUxVjrJFHL98fEt\n0Enf6KTDkWzo5FenfwEP+mECCmVuZHN0cmVhbQplbmRvYmoKNSAwIG9iagogICAyMTA0CmVu\nZG9iagozIDAgb2JqCjw8CiAgIC9FeHRHU3RhdGUgPDwKICAgICAgL2EwIDw8IC9DQSAxIC9j\nYSAxID4+CiAgID4+CiAgIC9Gb250IDw8CiAgICAgIC9mLTAtMCA3IDAgUgogICAgICAvZi0w\nLTEgOCAwIFIKICAgPj4KPj4KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL09ialN0bQogICAv\nTGVuZ3RoIDEwIDAgUgogICAvTiAxCiAgIC9GaXJzdCA0CiAgIC9GaWx0ZXIgL0ZsYXRlRGVj\nb2RlCj4+CnN0cmVhbQp4nDNTMOCK5orlAgAGOAFdCmVuZHN0cmVhbQplbmRvYmoKMTAgMCBv\nYmoKICAgMTYKZW5kb2JqCjEyIDAgb2JqCjw8IC9MZW5ndGggMTMgMCBSCiAgIC9GaWx0ZXIg\nL0ZsYXRlRGVjb2RlCiAgIC9MZW5ndGgxIDk5NzYKPj4Kc3RyZWFtCnic5Tp7XBTX1ffMYx+8\nZnfZZUcW3FkGULMoyIqKIe5EYYMh6iKS7GKVRTGSl2IWk5iHYFCDqIUk1NZoI01tUo2GQUkk\nr0qeNTE2tHm1tYnk1aaJflhrmjaG3e/MzIJok3z9/b7vv++yd+be87rnnnPuveeOEiCExJEm\nQhNh2S019Sd+8bCTENtzhFBVy25rEK7+Y9nXhPA89luur19xy7qap8yEpHYSou9ZcfPa65P2\n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\nMl+jBX6Gy+hZJbgb7Xpb5b+d+sCKJO62ZYWp9cPMjOHFR9pc1rjx3ZObz/DAOOfFW3QQR3/h\nu69TR6nuGsIPTOBXXrKm4Q6GVO6lD6/9BLzI4n3r0v64bvsk+zvxuQXgIq8rsmRnB0voLcTe\nX4CZsmy4GYaGgXf/9oQmyXmw331kRuLRskyBGQGZU0j5ivIVsiAWyJJYIh+ID8iKWCXWj5lT\nYEZRXmFeHKn+EZn6CuyrLZ23mCetQG1N9Wusr2qqUyOTN4XelCN2yKRVqNWk1ajV5FmjZ0W9\nFPaSpJWolVRfYv3DkDmFpCWfGn1K8i/Rf035FPCSb7eJ143v4j5He40xjTA/njw7nNro4f6+\nwhxQlb9fmp+tZgplbmRzdHJlYW0KZW5kb2JqCjE1IDAgb2JqCiAgIDM1MAplbmRvYmoKMTYg\nMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yCiAgIC9Gb250TmFtZSAvSUJJQUNMK0xp\nYmVyYXRpb25TYW5zCiAgIC9Gb250RmFtaWx5IChMaWJlcmF0aW9uIFNhbnMpCiAgIC9GbGFn\ncyAzMgogICAvRm9udEJCb3ggWyAtNTQzIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGljQW5n\nbGUgMAogICAvQXNjZW50IDkwNQogICAvRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQgOTc5\nCiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0ZvbnRGaWxlMiAxMiAwIFIKPj4KZW5k\nb2JqCjcgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1RydWVUeXBlCiAgIC9C\nYXNlRm9udCAvSUJJQUNMK0xpYmVyYXRpb25TYW5zCiAgIC9GaXJzdENoYXIgMzIKICAgL0xh\nc3RDaGFyIDEyNAogICAvRm9udERlc2NyaXB0b3IgMTYgMCBSCiAgIC9FbmNvZGluZyAvV2lu\nQW5zaUVuY29kaW5nCiAgIC9XaWR0aHMgWyAyNzcuODMyMDMxIDAgMCAwIDAgMCAwIDAgMzMz\nLjAwNzgxMiAzMzMuMDA3ODEyIDAgMCAwIDAgMjc3LjgzMjAzMSAwIDU1Ni4xNTIzNDQgNTU2\nLjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1\nNi4xNTIzNDQgMCA1NTYuMTUyMzQ0IDAgMCAwIDAgNTgzLjk4NDM3NSAwIDAgMCAwIDAgMCAw\nIDAgMCAwIDAgMCAwIDAgMCAwIDAgNzc3LjgzMjAzMSA2NjYuOTkyMTg4IDAgMCAwIDYxMC44\nMzk4NDQgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNTU2LjE1MjM0NCAwIDAgMCA1NTYuMTUy\nMzQ0IDI3Ny44MzIwMzEgMCAwIDIyMi4xNjc5NjkgMCAwIDIyMi4xNjc5NjkgODMzLjAwNzgx\nMiAwIDAgNTU2LjE1MjM0NCAwIDAgNTAwIDI3Ny44MzIwMzEgMCAwIDAgMCA1MDAgMCAwIDI1\nOS43NjU2MjUgXQogICAgL1RvVW5pY29kZSAxNCAwIFIKPj4KZW5kb2JqCjE3IDAgb2JqCjw8\nIC9MZW5ndGggMTggMCBSCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCiAgIC9MZW5ndGgxIDQw\nMDQKPj4Kc3RyZWFtCnicrVZrcBvVFT53Vy8/JTm2EYiwq2zsOsjGieWExDjWxrI2Mg5Yfqhd\n2TSWEts4IcSmMhTCw3IhYJSkTsDNlIaZ5AelJBB8ZROsMNC49E+hmGSmMExLaQwFCjSpWzph\nKMZRz13JzmMKf8od7b3nfOd17zlnVxcIAGRAFHiwbL6rX7zxTw1fAZARAG6ou+/W2x8Iv2gF\n0F0NYHzh1m33dD8TH5hFiyfx+bKnK9yZBbviAFmnkF/Vg0DOCD8AkG1CfmnP7f13Z+0kaJtd\nirxpW+/mMPquQ74S+ezbw3f38XfwHyIpIy/2/airb+759fXIhwB4D3AwBaCv0A/i7owgyDmc\nQc8b+AyTntch5J4qn7LmkTVrrC6ra8XyRQ6rY5HVYZ3Sdc0e2MBP6Qe/GtCvnL1C9yk6BwKN\nyTN6p64KBLhRLsnIzLTqc6/kFxcW8rm86DA7yh1cBm/T5xbk+oMF5swCuNofhEJwO8Hmdjut\n4HKRjo0/tOZdoYWzulxaUP2S4pVWR0E+Z5RW5a0lSwzGlTXE5SiQrPmFrusLDLruSPf57ZXX\nvVxZVXvoKtttlbqiz66t/P5N+Xc8zL3l++i889ib5OTr/kLzrmzrg3MtG7ymwXz9G/o34H48\ndQHco82XDDxBPvwYIHmGcRfm8z+A73SYUssL8AqMwqFLREPwAM7PXYKdgN/Csxp1APZ8i9vj\n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\neejBFUJ/xC1E8CC926uF7cpK4SpiC1zpsgWMLj5gwKOHUNaBzy3KCqG9zSe04bqoIi+gx/To\nKvjANp5k89X8Bn4bfx+vn2lKyp1NnNy0crUiNxWVKCf9pF4RBR96Xo/PqEJOKzMKF1VIYUVB\nwErMAUuFOYC3xAABIghmt7nDPGDWmc3l5kZzr3nYfNqcNBvdiM2Y+V4gjUCihURPEmRvvLXF\n6WxIGJN44zD62ykZokUtbJab2qhhiEKgrV2NE/LT4M49e6B2cQOtaFFpaHGwgXYiITMiioRl\ncbwQaoOR/kj/nU42SIqAfqczEmEUYZwzJdMo4oygGNXQCJn+OyHijPSTSKQfIv2IR8hGpCMR\niCAeIWiCT8SZ9r/gCQNsREc49adCRCJoF0E/kXQ420b4LzTA+uYKZW5kc3RyZWFtCmVuZG9i\nagoxOCAwIG9iagogICAyNjcxCmVuZG9iagoxOSAwIG9iago8PCAvTGVuZ3RoIDIwIDAgUgog\nICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxdkMFqwzAMhu9+Ch27Q3HSXUNg\ndJcc2o2lfQDHljPDIhvFOeTtp7ihgwlskP7/M7+lz917RyGD/uRoe8zgAznGOS5sEQYcA6n6\nBC7YvHfltpNJSgvcr3PGqSMfVdOA/hJxzrzC4c3FAV8UAOgPdsiBRjjcz/1j1C8p/eCElKFS\nbQsOvTx3MelqJgRd4GPnRA95PQr257itCeFU+voRyUaHczIW2dCIqqmkWmi8VKuQ3D99pwZv\nvw0Xdy3u6tVWxb3PN2775DOUXZglT9lECbJFCITPZaWYNqqcX0PTcJUKZW5kc3RyZWFtCmVu\nZG9iagoyMCAwIG9iagogICAyMjQKZW5kb2JqCjIxIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVz\nY3JpcHRvcgogICAvRm9udE5hbWUgL1RaWUFURStMaWJlcmF0aW9uU2FucwogICAvRm9udEZh\nbWlseSAoTGliZXJhdGlvbiBTYW5zKQogICAvRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtNTQz\nIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAv\nRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUgg\nODAKICAgL0ZvbnRGaWxlMiAxNyAwIFIKPj4KZW5kb2JqCjIyIDAgb2JqCjw8IC9UeXBlIC9G\nb250CiAgIC9TdWJ0eXBlIC9DSURGb250VHlwZTIKICAgL0Jhc2VGb250IC9UWllBVEUrTGli\nZXJhdGlvblNhbnMKICAgL0NJRFN5c3RlbUluZm8KICAgPDwgL1JlZ2lzdHJ5IChBZG9iZSkK\nICAgICAgL09yZGVyaW5nIChJZGVudGl0eSkKICAgICAgL1N1cHBsZW1lbnQgMAogICA+Pgog\nICAvRm9udERlc2NyaXB0b3IgMjEgMCBSCiAgIC9XIFswIFsgNzUwIDY4OS45NDE0MDYgXV0K\nPj4KZW5kb2JqCjggMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAg\nIC9CYXNlRm9udCAvVFpZQVRFK0xpYmVyYXRpb25TYW5zCiAgIC9FbmNvZGluZyAvSWRlbnRp\ndHktSAogICAvRGVzY2VuZGFudEZvbnRzIFsgMjIgMCBSXQogICAvVG9Vbmljb2RlIDE5IDAg\nUgo+PgplbmRvYmoKMTEgMCBvYmoKPDwgL1R5cGUgL09ialN0bQogICAvTGVuZ3RoIDI1IDAg\nUgogICAvTiA0CiAgIC9GaXJzdCAyMwogICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+PgpzdHJl\nYW0KeJxVkVFrwjAUhd/7K87LwL7YpK1OpfhgCzLGQHRPjj2E9FILoylJOua/3021jhESuB/3\n5JybSIgozbDgEzJfRmmO7FlERYHk/doTkoNqyEUAkte2dvhACoEjPkdUmqHzkNF2OyoO1tSD\nJouZVq01kHO5mueYXbzv3SZJRtpY1V9a7ebGNnF8u8aS8q3pKuUJs2qTinQh1lLyTsX6HE/3\n/yXCE7sG6UFZChFCqBG8Ud2qnfnhpIKXFGKFbCkegTvP/Q75Q7C3ZuhRFKEI9c1kpBM6MbWq\nc30w09cJv8Dbgaaq5K6KvltNx/0uQA4d+JGcGawmh+zheWKh9rfsjn/g33yl8urLNPfx+PXv\n03HTL+kSbkcKZW5kc3RyZWFtCmVuZG9iagoyNSAwIG9iagogICAyNzUKZW5kb2JqCjI2IDAg\nb2JqCjw8IC9UeXBlIC9YUmVmCiAgIC9MZW5ndGggMTAzCiAgIC9GaWx0ZXIgL0ZsYXRlRGVj\nb2RlCiAgIC9TaXplIDI3CiAgIC9XIFsxIDIgMl0KICAgL1Jvb3QgMjQgMCBSCiAgIC9JbmZv\nIDIzIDAgUgo+PgpzdHJlYW0KeJxjYGD4/5+JgZuBAUQwMXKsZmBgZOAHEhxTQGKcQJaaEZAw\newQkOLVBxDogYd4GYh0BEsqOICISSKiygQhZIKEBMsW4CkRMAhImB0HEDSBh+gZiESOIYGa0\n5AOKWaoyMAAAEw0O9QplbmRzdHJlYW0KZW5kb2JqCnN0YXJ0eHJlZgoxNDYyOQolJUVPRgo=",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/D791ADF13FCE4F29BF253917E4B93051/t2f2wbgucm.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 840
      },
      "image/jpeg": {
       "height": 300,
       "width": 840
      },
      "image/png": {
       "height": 300,
       "width": 840
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 840
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制三个子图，每个子图对应不同的成功概率\n",
    "plots <- list()\n",
    "titles <- c(\"Team itself(π = 0.5)\", \"Optimists(π = 0.8)\", \"Pessimists(π = 0.2)\")\n",
    "\n",
    "for (i in 1:length(p_values)) {\n",
    "  plots[[i]] <- ggplot2::ggplot(data.frame(y = y, likelihood = likelihoods[,i]), aes(x = y, y = likelihood)) +\n",
    "                  geom_segment(aes(xend = y, yend = 0), color = \"gray\", size = 1) +\n",
    "                  geom_point(color = \"black\", size = 3) +\n",
    "                  labs(title = titles[i], x = 'y', y = 'f(y | π)') +\n",
    "                  xlim(-0.2, 6.2) +\n",
    "                  scale_y_continuous(expand = c(0,0),limits = c(0, 0.45)) + \n",
    "                  papaja::theme_apa()\n",
    "}\n",
    "\n",
    "# 将三个图以子图的形式并排显示\n",
    "options(repr.plot.width=14, repr.plot.height=5) #自定义画布大小\n",
    "gridExtra::grid.arrange(grobs = plots, ncol = 3)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "838f21e5",
   "metadata": {
    "_id": "ECAB551A37B54158AC2B5734427CAD1E",
    "id": "14D6A6A6FB2049B29FA45605BC31FC4D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "显然，对于乐观派来说，团队取得六次成功的概率远高于其他成功次数。而对于悲观派来说，团队全败的可能性远高于其他成功次数。  \n",
    "- 换句话说，若团队在6项研究中仅成功复现一次，这种情况在低成功率下(悲观派设想的情境)更可能出现，在高成功率下(乐观派设想的情境)几乎不可能出现。  \n",
    "- 那么团队成功重复的成功率率，更可能(likelihood)是悲观派设想的那样($\\pi = 0.2$)。  \n",
    "\n",
    "例如，在乐观派和悲观派眼中(不同成功率$\\pi$下)，6项研究只成功1次的可能性(即似然，likelihood)。  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "6a7722d1",
   "metadata": {
    "_id": "44F114058962412AAEEF8D6DA01A1FB8",
    "collapsed": false,
    "id": "41BB96E20D5547709B80F9AB17811943",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nMVVy2obQRC871fMUTqo3a95gfHBEAKBHJwIcrB9CHJk\nMFHAziEE8vHp2d3Zh1bG4BiCkNDUVvdU99T0kkP7bMh+OCW3OzSPDbnyebp3Z1/R3f9sCkOF\nW8LTN7dfAl3Ep/eOgILkGNwvwz7Y96G5vnUI6O4aQvfRHYV+bq7cY+MDJArOQ47RScjAKI7F\nklkmY31xPxaiXorZt5lZ0ZFtJU4zkOeaDSGqx5zc8o9V0W/BQCLZRysGTxbDSqDMZQfImd1h\nQFhiu933vkJRMiyYDnp7GaJGoVJ9AAliMkZkLoMkO/GmgpHfXgepRbGdhgfSZDIqcCwDWxvM\nDYZlJ6NjCoGetQ+rtgc+7XiPZIEo2u6VrAmLdR+xq0hjkAJ7nSQ9XteQy+4QJVkwu2Sumzbv\nqBpRDyGk2XH0iLmD0PovCbzPy3UfsatI0zo6sB9TLNY1ZD/TmE9pHM/yxUb/pyL+1R9kR8fJ\nTy3YAxlStglSnBh5sezouwo0ThDsyg7R81VlXzaTeVfuRD+Uqt8Pbjaliv0RBClbBcs/Vu/l\n1sqAmHOyhnaDeVhyLq7lZIPErlXmFInc9tCc7Te4sSnntvtmZa1Ybx9Mi0L0IYTstncFpZMo\nj2i06dmBcpKqBX23Nf3s6tcOxCMkXdY7vfAdhZKHaNoHSgUmFNHS5ZHRrUdCEkCbXgOhX4+E\nYqugI6Fft32vFlockXIA5PmsPKoyCgS0oa5SRqDFVGASQj6CpylpQCas4f0wsE69MYQ9iExZ\nAzJhKdpLT6esAZmV8lrDBUuL5IPlK01LPlrqI8NdF8fheuMTSzGUX99u7V568JIpZ0to9ikk\nP5LiMyQqmcqTYrM6AYpA7pV1hWWmFO06ROsu2z3UXhNtqNN0joh00Zq4xGzaeFJIkpMWm9nG\nZgsMy2L2a06rm9XvP62O9lmf9Pr8IneJhydD1Jp1dbOu0q+av1PI4QQKZW5kc3RyZWFtCmVu\nZG9iago1IDAgb2JqCiAgIDcyMwplbmRvYmoKMyAwIG9iago8PAogICAvRXh0R1N0YXRlIDw8\nCiAgICAgIC9hMCA8PCAvQ0EgMSAvY2EgMSA+PgogICA+PgogICAvRm9udCA8PAogICAgICAv\nZi0wLTAgNyAwIFIKICAgICAgL2YtMS0xIDggMCBSCiAgICAgIC9mLTAtMSA5IDAgUgogICA+\nPgo+PgplbmRvYmoKMTAgMCBvYmoKPDwgL1R5cGUgL09ialN0bQogICAvTGVuZ3RoIDExIDAg\nUgogICAvTiAxCiAgIC9GaXJzdCA0CiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVh\nbQp4nDNTMOCK5orlAgAGOAFdCmVuZHN0cmVhbQplbmRvYmoKMTEgMCBvYmoKICAgMTYKZW5k\nb2JqCjEzIDAgb2JqCjw8IC9MZW5ndGggMTQgMCBSCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2Rl\nCiAgIC9MZW5ndGgxIDY5MzIKPj4Kc3RyZWFtCnic1Th7eBN1tufMI0nTRx59ZCBAJgwtaIrB\nhgLFLhnaJhaL0AfRpAhNoUBhVYqpL1ZtAdEaYAvYRVm4wqesu7BCp7xaVJaqq5+u8onPvffi\nLtVF11XYevG1iiT3zCQthU+9+3177x/3l87MeZ/zO+f8fvObAgKAEVqBBXHhLfVNJ03/toUI\n5QBM7cI7msXr/rPiW4C0XYS3LW5acst99YctAKZ8AP3BJTffvXhRp0dHFp4CSNneuKi+IRXW\ndQHk9BFtUiMR0jvYdQA2gfAxjbc03zUxzt9JeDHhU25evrAeoIhs25oJL76l/q4m9l72NOEK\n4WLTbYuaLuy7dgbhJwDYUmDgOABfwK+iaPXgkNMZHc/q2BQDz3JE8h53H7dYsajI4rF4rp6Q\n6bQ4My1Oy3Fu0fltM9nj/KpvW/jC8zbub2ScbFXGz3ASvwVSwQbj5CyrLg10IAxLMUVCKXo2\nOxJih4HXBYLXNcQomhlpNGMxW50FVnYA9hRYOembzz//4izCN2e7Nzz+5KaHd+7oYJ6L7Yit\nx9twIf4Ul8U2x7bi1WiNnYu9Gns79gmOAIRnAPA+OEnB22QjC8DxgNvmArg1n6pDT6En+5kX\nTp5UY0bYTiImmr8RXHIWZ2CY1DSe41idzoCAzSEQKGILeASvx+P2JExoNpwWvjDXY3Fmb8cl\nsefx+ifxxq1c8V/2fHhe2KraXUJ20ygXo2CaLI6ADJMhe2S2CTiHaBiRYbWmRkJWPcIIGDHg\nwwpFgubKWkRubFp2EuFO4wsn5kmjdfqx09BTkJOdlYF6+nNmL/E8/PiO1tltd0d+kd6T9fXz\n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\nPsGRCESIHkFSoSviStoftEQO5pMhujUnXEQipBchO5GkO2E+/DcMlz1VCmVuZHN0cmVhbQpl\nbmRvYmoKMTQgMCBvYmoKICAgNDMzNAplbmRvYmoKMTUgMCBvYmoKPDwgL0xlbmd0aCAxNiAw\nIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicXZHLbsQgDEX3fIWX08WI\nPOZVCUWqppss+lDTfkACTorUACJkkb+vgdFU6iLcg+1rOYZf2+fW6AD83VvZYYBRG+VxsauX\nCANO2rCyAqVluN3SKefeMU7mblsCzq0ZLRMC+Acll+A32D0pO+ADAwD+5hV6bSbYfV27HOpW\n535wRhOgYE0DCkdq99K7135G4Mm8bxXlddj2ZPur+NwcQpXuZR5JWoWL6yX63kzIRFE0IMax\nYWjUv1xZZ8swyu/eM1HH0qIgYaLCxCQUL3O8jFxlriLXmevIh8yHyMfMx8jnzGfi0ykxCfW/\n5P4X4vNjYhJimVnGmhwnicPfpoy/Efd9349cvafVpEdJO4nb0Abv7+asi670/QI2kouHCmVu\nZHN0cmVhbQplbmRvYmoKMTYgMCBvYmoKICAgMjg0CmVuZG9iagoxNyAwIG9iago8PCAvVHlw\nZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1lIC9HVUZFRFIrTGliZXJhdGlvblNhbnMK\nICAgL0ZvbnRGYW1pbHkgKExpYmVyYXRpb24gU2FucykKICAgL0ZsYWdzIDMyCiAgIC9Gb250\nQkJveCBbIC01NDMgLTMwMyAxMzAxIDk3OSBdCiAgIC9JdGFsaWNBbmdsZSAwCiAgIC9Bc2Nl\nbnQgOTA1CiAgIC9EZXNjZW50IC0yMTEKICAgL0NhcEhlaWdodCA5NzkKICAgL1N0ZW1WIDgw\nCiAgIC9TdGVtSCA4MAogICAvRm9udEZpbGUyIDEzIDAgUgo+PgplbmRvYmoKNyAwIG9iago8\nPCAvVHlwZSAvRm9udAogICAvU3VidHlwZSAvVHJ1ZVR5cGUKICAgL0Jhc2VGb250IC9HVUZF\nRFIrTGliZXJhdGlvblNhbnMKICAgL0ZpcnN0Q2hhciAzMgogICAvTGFzdENoYXIgMTI0CiAg\nIC9Gb250RGVzY3JpcHRvciAxNyAwIFIKICAgL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcK\nICAgL1dpZHRocyBbIDAgMCAwIDAgMCAwIDAgMCAzMzMuMDA3ODEyIDMzMy4wMDc4MTIgMCAw\nIDAgMCAyNzcuODMyMDMxIDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2\nLjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgMCA1NTYuMTUyMzQ0IDAgMCAwIDAgMCAw\nIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAw\nIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc3LjgzMjAzMSAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCA1MDAgMCAwIDI1OS43NjU2MjUgXQogICAgL1RvVW5pY29k\nZSAxNSAwIFIKPj4KZW5kb2JqCjE4IDAgb2JqCjw8IC9MZW5ndGggMTkgMCBSCiAgIC9GaWx0\nZXIgL0ZsYXRlRGVjb2RlCiAgIC9MZW5ndGgxIDQwMDQKPj4Kc3RyZWFtCnicrVZrcBvVFT53\nVy8/JTm2EYiwq2zsOsjGieWExDjWxrI2Mg5Yfqhd2TSWEts4IcSmMhTCw3IhYJSkTsDNlIaZ\n5AelJBB8ZROsMNC49E+hmGSmMExLaQwFCjSpWzphKMZRz13JzmMKf8od7b3nfOd17zlnVxcI\nAGRAFHiwbL6rX7zxTw1fAZARAG6ou+/W2x8Iv2gF0F0NYHzh1m33dD8TH5hFiyfx+bKnK9yZ\nBbviAFmnkF/Vg0DOCD8AkG1CfmnP7f13Z+0kaJtdirxpW+/mMPquQ74S+ezbw3f38XfwHyIp\nIy/2/airb+759fXIhwB4D3AwBaCv0A/i7owgyDmcQc8b+AyTntch5J4qn7LmkTVrrC6ra8Xy\nRQ6rY5HVYZ3Sdc0e2MBP6Qe/GtCvnL1C9yk6BwKNyTN6p64KBLhRLsnIzLTqc6/kFxcW8rm8\n6DA7yh1cBm/T5xbk+oMF5swCuNofhEJwO8Hmdjut4HKRjo0/tOZdoYWzulxaUP2S4pVWR0E+\nZ5RW5a0lSwzGlTXE5SiQrPmFrusLDLruSPf57ZXXvVxZVXvoKtttlbqiz66t/P5N+Xc8zL3l\n++i889ib5OTr/kLzrmzrg3MtG7ymwXz9G/o34H48dQHco82XDDxBPvwYIHmGcRfm8z+A73SY\n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\n+7joPtI3HB3m9g6TyeFTw1zj7o7dvbv5h5WkcHAneejBFUJ/xC1E8CC926uF7cpK4SpiC1zp\nsgWMLj5gwKOHUNaBzy3KCqG9zSe04bqoIi+gx/ToKvjANp5k89X8Bn4bfx+vn2lKyp1NnNy0\ncrUiNxWVKCf9pF4RBR96Xo/PqEJOKzMKF1VIYUVBwErMAUuFOYC3xAABIghmt7nDPGDWmc3l\n5kZzr3nYfNqcNBvdiM2Y+V4gjUCihURPEmRvvLXF6WxIGJN44zD62ykZokUtbJab2qhhiEKg\nrV2NE/LT4M49e6B2cQOtaFFpaHGwgXYiITMiioRlcbwQaoOR/kj/nU42SIqAfqczEmEUYZwz\nJdMo4oygGNXQCJn+OyHijPSTSKQfIv2IR8hGpCMRiCAeIWiCT8SZ9r/gCQNsREc49adCRCJo\nF0E/kXQ420b4LzTA+uYKZW5kc3RyZWFtCmVuZG9iagoxOSAwIG9iagogICAyNjcxCmVuZG9i\nagoyMCAwIG9iago8PCAvTGVuZ3RoIDIxIDAgUgogICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+\nPgpzdHJlYW0KeJxdkMFqwzAMhu9+Ch27Q3HSXUNgdJcc2o2lfQDHljPDIhvFOeTtp7ihgwls\nkP7/M7+lz917RyGD/uRoe8zgAznGOS5sEQYcA6n6BC7YvHfltpNJSgvcr3PGqSMfVdOA/hJx\nzrzC4c3FAV8UAOgPdsiBRjjcz/1j1C8p/eCElKFSbQsOvTx3MelqJgRd4GPnRA95PQr257it\nCeFU+voRyUaHczIW2dCIqqmkWmi8VKuQ3D99pwZvvw0Xdy3u6tVWxb3PN2775DOUXZglT9lE\nCbJFCITPZaWYNqqcX0PTcJUKZW5kc3RyZWFtCmVuZG9iagoyMSAwIG9iagogICAyMjQKZW5k\nb2JqCjIyIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvcgogICAvRm9udE5hbWUgL1Ra\nWUFURStMaWJlcmF0aW9uU2FucwogICAvRm9udEZhbWlseSAoTGliZXJhdGlvbiBTYW5zKQog\nICAvRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtNTQzIC0zMDMgMTMwMSA5NzkgXQogICAvSXRh\nbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAvRGVzY2VudCAtMjExCiAgIC9DYXBIZWln\naHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0ZvbnRGaWxlMiAxOCAwIFIK\nPj4KZW5kb2JqCjIzIDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9TdWJ0eXBlIC9DSURGb250\nVHlwZTIKICAgL0Jhc2VGb250IC9UWllBVEUrTGliZXJhdGlvblNhbnMKICAgL0NJRFN5c3Rl\nbUluZm8KICAgPDwgL1JlZ2lzdHJ5IChBZG9iZSkKICAgICAgL09yZGVyaW5nIChJZGVudGl0\neSkKICAgICAgL1N1cHBsZW1lbnQgMAogICA+PgogICAvRm9udERlc2NyaXB0b3IgMjIgMCBS\nCiAgIC9XIFswIFsgNzUwIDY4OS45NDE0MDYgXV0KPj4KZW5kb2JqCjkgMCBvYmoKPDwgL1R5\ncGUgL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAgIC9CYXNlRm9udCAvVFpZQVRFK0xpYmVy\nYXRpb25TYW5zCiAgIC9FbmNvZGluZyAvSWRlbnRpdHktSAogICAvRGVzY2VuZGFudEZvbnRz\nIFsgMjMgMCBSXQogICAvVG9Vbmljb2RlIDIwIDAgUgo+PgplbmRvYmoKMjQgMCBvYmoKPDwg\nL0xlbmd0aCAyNSAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgMjU2\nMAo+PgpzdHJlYW0KeJzVVG10VMUZfu99ZnaT7EfubjaBCIHEuAiEELIRIl+6xFAgKAKJmrRg\nAywhUGiA8Nk0gtKARDBYdEWISJFSDNZuKUIktFUBrQ1pqyGcUmkpClraVJEi2AXf9N1AT8/p\nOe3fns7s3DvPM+/XMztzySCieFpNIGvWsiXpNDdtOJExTQZXLJyzYNEdy+YRQTDtnTN/ZcWj\n9fFzZd4o4/XK2TNCzo+Mk0QqTvCwSiFcL9irBAcF31a5YMmK+O0UERwSHDe/atYMiasEzxfs\nXDBjxUJVZVskeIXg9IWLZy8caf9MpmoLka4kkyo4rCr0LqnOTrcEneoa2a4ZcXqVqSjn6InO\nXLJOdJ7oHJLkyfD4MzwZFYquV6PX9fMctru/uLTYNoAMKuo6pbaocupBOUFHaoLhjUNSHKX0\ntE4fFd+jR4/nBp32de4NyUjqsY4OJ1PO5c5AwLosYTOSMz2+lLzAsPxkt5F5a7+hkifTk1mk\ncjfm5icOsmcW+VdM41mHG1R585eTx9+tjTqXc03EbLxeij1kDKVmapX+BjVRo7FbUIWIWyTM\nDnMf1dFSYY4YrcZ6M1u43XSR2sVyHbWiSZFRRHnCEp3SJl02Smi/xBhu+IzhdpsiNUntV1NV\ns/pYtVG+qlZtqlxVG3nYqR/Uu2UMxzHTS+9QX2o2zlA1HcIF5OGwKlRuOoM2NNF5ySL/heRo\noF1UI7X4jCpaZdaYU4V5W7fRVulVst5mbDfapbpDxhrqoC1Q5njabnSIrla6QmtQYq6SM5Jn\nVkj9b0usNvHfStWKdIeRQGxmCbe/+8zM7H6mIVt3dPeLtEoyl9AuW7PNZ8+ULLEd220cMTpt\nm2kHtWMaFuF9o05lqj1qPDXc2AGUU4PE3hrzsVUYK0V7rNfEopvLVbnRRBdUuX2mxD4WUyQ5\n95tTRVEFHZax3GaJppFGHdZLpbHVNGqzF6kc8ZcI9lpRTVSFoTRPZjX0Cu2jbISpQSJ167Xl\n6yvi2ajOiuYGY6N5hdpQSAOoQn0ie00+ojDRQbtNK5gGDUq3IqZ/QigSnFKa/ouyjOxB/wbT\nLXt6hCZHXCvTm7u6JpeqXrosontH4I+LKH/m2f+0eDZ70MTJpemRL8cW3ow6trxQuOJSmcaQ\n0MKPLexeiyWNaL/8JpRH0mdVptdb9Zkj6q3ZI7LlWopi8+Hm+yctvfT1xFGfU9/YlSZqfzPr\n+j/fV09ev9ddFn86dpfphkf3076A04jcfPVkdIq77Cb/r2bKCa1Q71LRTVwY+3bcyIcSyqJK\ncspNt+i5WFSVbKbIWzWbq4Nd1xhRH/7uxxcBXA3jihufMy4z/ubHJTc+C+OiH5/Wj9GfMj4J\n469hdEbxlyj+zLgwAn8qwMeMjwI4f65Ynw/jnBieK8aHH+ToD6P4IAdnGX9knAngDz78PozT\njPe9+F0tTrXgt4yTYn6yFh0nxumOWpwYh/b3eul2xnu98C7jN4xfM37FaAvjeGsffZzR2ge/\nDOAdxlt1Hv1WbxxLwVHGEcabjDcYrzN+zvgZ46eMw4wWxiEPXlvr168xmg+26GbGwQPT9cEW\nHFytDrzq1wemB7twIKhe9WM/4ydh7GP8mBFh/IjxSgg/dOPlvX79cgh7m7x6rx9NXrwkRb8U\nxR7GDxi7Gd/3YhfjxZ1u/WIAO934Xgg7xGRHGC8wtj/v1NsZzzvRuC1VN4awbault6Viq4Xn\nErCF8WzYpZ9lhF14RpyeCePpzW79dH9sduO7UTy1qUU/xdjUMF1vasGm1arhSb9umI6GoHrS\nj42MDU8M1hsYTwxGvcisH4P1jzv0eh8ed2CdEOtCWCs7tdaPOg++w1jzmEevYTzmwaOM1YxV\njGDXI7W1+hFGbS2+HUJNSbKu8eNbjJWMFW4sd2JZApYylkRRHcXiKBZFsZBRxfgmY34GvsGY\n5ynQ84oxl1FZizkCKhizGSHGLMZMxowRKI/iYSemM77G+CqjrDRBl0VRmoCHUlL1QwE8yHhA\nMj9QgJJkFBuWLu6JqT5MKUrSUxiTHbifMek+S09i3GfhXsZEWZnIKJpg6aIkTEhz6QkWxrsw\njvGVMMaGUci4x8zW90RR0IIxExFk3M24a7RX3+XD6FGJerQXo0a69KhgVyJGujCCMZxxZ75P\n3xlF/jBL5/swbKhDD7Mw1IE7+iDPhUCuQwcYuQ4MyXHoIS7kODA4O14PtpAdj0EBZA3066wQ\nBg7w6oF+DPCi/+1+3X8Mbvejn9+h+yXC78BtjEzGrYnIEJ0ZXqSH0DeKPiKhTwhpLvSWHezN\n6BXFLQVIFZDK6BlCD9mpHowUcUpJRTLDx0hieMXAy/CIVk8BrFokhuBmuJwp2sVwirUzBQ5G\ngoV4RpyYxTHsPthCULKo5AQkQ1iwfEUtbWbDsEAMo9kI1W00sv4fGv2vC/ivLe0f1RG3uQpl\nbmRzdHJlYW0KZW5kb2JqCjI1IDAgb2JqCiAgIDE4MjIKZW5kb2JqCjI2IDAgb2JqCjw8IC9M\nZW5ndGggMjcgMCBSCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nF2QwWrD\nMAyG734KHbtDcdJdQ2B0lxzajaV9AMeWM8MiG8U55O2nuKGDCWyQ/v8zv6XP3XtHIYP+5Gh7\nzOADOcY5LmwRBhwDqfoELti8d+W2k0lKC9yvc8apIx9V04D+EnHOvMLhzcUBXxQA6A92yIFG\nONzP/WPULyn94ISUoVJtCw69PHcx6WomBF3gY+dED3k9CvbnuK0J4VT6+hHJRodzMhbZ0Iiq\nqaRaaLxUq5DcP32nBm+/DRd3Le7q1VbFvc83bvvkM5RdmCVP2UQJskUIhM9lpZg2qpxfQ9Nw\nlQplbmRzdHJlYW0KZW5kb2JqCjI3IDAgb2JqCiAgIDIyNAplbmRvYmoKMjggMCBvYmoKPDwg\nL1R5cGUgL0ZvbnREZXNjcmlwdG9yCiAgIC9Gb250TmFtZSAvWEhMWFZJK0RlamFWdVNhbnMK\nICAgL0ZvbnRGYW1pbHkgKERlamFWdSBTYW5zKQogICAvRmxhZ3MgNAogICAvRm9udEJCb3gg\nWyAtMTAyMCAtNDYyIDE3OTMgMTIzMiBdCiAgIC9JdGFsaWNBbmdsZSAwCiAgIC9Bc2NlbnQg\nOTI4CiAgIC9EZXNjZW50IC0yMzUKICAgL0NhcEhlaWdodCAxMjMyCiAgIC9TdGVtViA4MAog\nICAvU3RlbUggODAKICAgL0ZvbnRGaWxlMiAyNCAwIFIKPj4KZW5kb2JqCjI5IDAgb2JqCjw8\nIC9UeXBlIC9Gb250CiAgIC9TdWJ0eXBlIC9DSURGb250VHlwZTIKICAgL0Jhc2VGb250IC9Y\nSExYVkkrRGVqYVZ1U2FucwogICAvQ0lEU3lzdGVtSW5mbwogICA8PCAvUmVnaXN0cnkgKEFk\nb2JlKQogICAgICAvT3JkZXJpbmcgKElkZW50aXR5KQogICAgICAvU3VwcGxlbWVudCAwCiAg\nID4+CiAgIC9Gb250RGVzY3JpcHRvciAyOCAwIFIKICAgL1cgWzAgWyA2MDAuMDk3NjU2IDYw\nMi4wNTA3ODEgXV0KPj4KZW5kb2JqCjggMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5\ncGUgL1R5cGUwCiAgIC9CYXNlRm9udCAvWEhMWFZJK0RlamFWdVNhbnMKICAgL0VuY29kaW5n\nIC9JZGVudGl0eS1ICiAgIC9EZXNjZW5kYW50Rm9udHMgWyAyOSAwIFJdCiAgIC9Ub1VuaWNv\nZGUgMjYgMCBSCj4+CmVuZG9iagoxMiAwIG9iago8PCAvVHlwZSAvT2JqU3RtCiAgIC9MZW5n\ndGggMzIgMCBSCiAgIC9OIDQKICAgL0ZpcnN0IDIzCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2Rl\nCj4+CnN0cmVhbQp4nFWRQWuEMBCF7/6KdynoRZPoLu4ie1iFpZSCuD219BBicIViJIml+++b\n6GopIYf5eDPvTUJBgpRgRwIGmu2DlCLdH4KiQPJ2HyWSmnfSBACSl741+AADQYPPGZVqGixo\ncDrNHbVW7SSkRih4rxVoTPM4Q3izdjTHJJlpp/l464WJle6iaBmjJbe9GipuJcLqyAjbkQOl\n7jJK3qN1/l8iPDlX31pzLX0EH2oGr7Lt+Vn9uKTEnSxlYHm+5R2skxtkm/6i1TSiKHzh68Vj\npiu6Oqr5YEbvJe4rfobVk1yr0qkq+d0L2VzOHrrMnjfSqEkLaZBunlfXKOwS3bgP+LdeyS3/\nUt1jO/f4j+Wc6BeNzm4cCmVuZHN0cmVhbQplbmRvYmoKMzIgMCBvYmoKICAgMjc0CmVuZG9i\nagozMyAwIG9iago8PCAvVHlwZSAvWFJlZgogICAvTGVuZ3RoIDEyNQogICAvRmlsdGVyIC9G\nbGF0ZURlY29kZQogICAvU2l6ZSAzNAogICAvVyBbMSAyIDJdCiAgIC9Sb290IDMxIDAgUgog\nICAvSW5mbyAzMCAwIFIKPj4Kc3RyZWFtCnicY2Bg+P+fiYGHgQFEMDEyuzIwMDLwAwlmfZAY\nF5AlkQ8kTAyAhMYKkMQNIMESAxK7AGIVAQnRAyACJCHuDCKigIRUIZBQdQAREUBCrR1EzAMS\n6puAhKYPkDA4BSIeAQkjQRChASSMzSFuYQQRzIxm4UAxszwGBgAu+hJbCmVuZHN0cmVhbQpl\nbmRvYmoKc3RhcnR4cmVmCjEzOTM0CiUlRU9GCg==",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/41BB96E20D5547709B80F9AB17811943/t2f2wbkcur.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 240,
       "width": 360
      },
      "image/jpeg": {
       "height": 240,
       "width": 360
      },
      "image/png": {
       "height": 240,
       "width": 360
      },
      "image/svg+xml": {
       "height": 240,
       "isolated": true,
       "width": 360
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 定义成功次数和研究总次数\n",
    "y <- 1  # 成功次数\n",
    "n <- 6  # 研究总次数\n",
    "\n",
    "# 计算似然值，对于三种不同的成功概率 p\n",
    "p_values <- c(0.5, 0.8, 0.2)  # 定义三种成功率\n",
    "likelihoods <- sapply(p_values, function(p) dbinom(y, size = n, prob = p))  # 计算似然值\n",
    "\n",
    "# 创建数据框存储结果\n",
    "data <- data.frame(p_values, likelihoods)\n",
    "\n",
    "# 创建图形\n",
    "options(repr.plot.width=6, repr.plot.height=4) #自定义画布大小                \n",
    "ggplot2::ggplot(data, aes(x = p_values, y = likelihoods)) +\n",
    "  geom_segment(aes(xend = p_values, yend = 0), color = \"gray\", size = 1) +  \n",
    "  geom_point(color = \"black\",size = 3) + \n",
    "  labs(y = 'f(y|π)', x = expression(pi)) +  # 设置坐标轴标签\n",
    "  xlim(0, 1) +\n",
    "  scale_y_continuous(expand = c(0,0),limits = c(0, 0.45)) +\n",
    "  papaja::theme_apa()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2f3d5174",
   "metadata": {
    "_id": "72AC4CDC23224E4D922F9C883E946616",
    "id": "F8902268E097421397DA75FC883F6C91",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**似然函数**  \n",
    "\n",
    "当团队只成功复现一次时，该事件在不同成功率下出现的可能性可以写为：  \n",
    "\n",
    "$$  \n",
    "f(Y=1|\\pi=0.2) = \\binom{6}{1} 0.2^1 (1-0.2)^{5}  \n",
    "$$  \n",
    "$$  \n",
    "f(Y=1|\\pi=0.5) = \\binom{6}{1} 0.5^1 (1-0.5)^{5}  \n",
    "$$  \n",
    "$$  \n",
    "f(Y=1|\\pi=0.8) = \\binom{6}{1} 0.8^1 (1-0.8)^{5}  \n",
    "$$  \n",
    "\n",
    "因此，成功复现次数为1时的似然函数可以写成  \n",
    "\n",
    "$$  \n",
    "L(\\pi|y=1) = f(y=1|\\pi) = \\binom{6}{1} \\pi^{1}(1-\\pi)^{6-1} = 6\\pi(1-\\pi)^{5}  \n",
    "$$  \n",
    "\n",
    "不同成功率下的似然：  \n",
    "\n",
    "| $\\pi$          | 0.2   | 0.5   | 0.8   |  \n",
    "|---------------|-------|-------|-------|  \n",
    "| $L(\\pi \\| y=1)$ | 0.3932 | 0.0938 | 0.0015 |  \n",
    "\n",
    "\n",
    "\n",
    "\n",
    "**注意：**  \n",
    "\n",
    "似然函数表示的是，在各种可能的成功率$\\pi$下,成功次数$Y=1$的可能性，所以  \n",
    "1. 该似然函数公式只取决于$\\pi$  \n",
    "2. 似然函数的总和加起来不为1（从条件概率的公式来看，似然函数的分母是不同的）"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "35cda0b0",
   "metadata": {
    "_id": "D0F1C949052B4862A5FF3F952B56246C",
    "id": "81A97D1E92F8449BA0DA274790092CF7",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 条件概率 VS 似然函数  \n",
    "\n",
    "🤓  \n",
    "当$\\pi$是一定时，条件概率质量函数$f(·|\\pi)$可以帮我们计算在$\\pi$取值下（各种模型），不同的数据$Y$(e.g., $y_{1},y_{2}$)发生的可能性。  \n",
    "$$  \n",
    "f(y_{1}|\\pi) \\; vs \\; f(y_{2}|\\pi)  \n",
    "$$  \n",
    "\n",
    "当$Y = y$一定时，似然函数$L(·|y)= f(y|·)$允许我们比较在各种不同的模型，即二项式的$\\pi$取值(e.g., $\\pi_{1},\\pi_{2}$)下，观察到这个数据$y$的可能性(relative likelihood)。  \n",
    "\n",
    "\n",
    "$$  \n",
    "L(\\pi_{1}|y) \\; \\text{与} \\; L(\\pi_{2}|y)  \n",
    "$$  \n",
    "$$  \n",
    "\\text{即}  \n",
    "$$  \n",
    "$$  \n",
    "f(y|\\pi_{1}) \\; \\text{与} \\; f(y|\\pi_{2})  \n",
    "$$  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "110761aa",
   "metadata": {
    "_id": "37CA7578F4774A4A80CE7B13B1DCFBE0",
    "id": "3B29636E5BAF460E9C2AA27F741F736D",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**在二项分布模型下...**  \n",
    "\n",
    "进行$n = 6$个重复实验时，成功次数与成功率的关系符合二项式模型，可以用如下的形式来表示：  \n",
    "\n",
    "$$  \n",
    "Y|\\pi \\sim Bin(6,\\pi)  \n",
    "$$  \n",
    "\n",
    "\n",
    "$$  \n",
    "f(y|\\pi) = \\binom{6}{y} \\pi^{y}(1-\\pi)^{6-y} \\quad\\quad for\\;y \\in \\{0,1,2,3,4,5,6\\}  \n",
    "$$  \n",
    "\n",
    "-----------------------------------  \n",
    "\n",
    "下图给出了几种 $\\pi$的取值，我们可以通过概率模型得到每种$Y$发生的可能性。  \n",
    "* 同时，我们可以看到，Y=1(赢一次)这一特定的数据模式，在各个$\\pi$取值(模型)下的似然。  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "5beaa9ed",
   "metadata": {
    "collapsed": false,
    "id": "FA36EC32DBCA496BB10ACAF0B5D542C6",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "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\nGBY1S77KQG7ngJlEsXq59GoyUts7xWQnnnaoaH5bO1RfYAGbu9n4ITd/26OMnZHcrXTcRT45\nyKUVmZHavaxGe7l2L0f64rTvurkVie1bB1Vv082tIrVnM0Ld3DL8VDrbzXVwNJH01dROSO5m\nOwj2xCQ7ubSqM1K729VoL5/rbnugO/G7d5PxM5K7+16kezbIpYGfkYU6/NVmJ57r+HsjkPg1\nr0AC6B85eOAC+JSfivXfMWRgoX/oUOx1Yv13Dx2vLLVazZin1dvGfgs3XwevtPidRs+2oXmO\nSYl4ZdGpvDKrVF5JOi2vzEqVV5JSyytJqfDKotTwSpoR8crZ4VGsjUftjb/YACyVdOkATmrr\nWoqS1qw4rZVc0ZrUdrUOIq1ZZbSlBcg/I68E25t5pRPuCrzSn/LKn5f/ABFEpNUKZW5kc3Ry\nZWFtCmVuZG9iago1IDAgb2JqCiAgIDIwNzkKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4dEdT\ndGF0ZSA8PAogICAgICAvYTAgPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQgPDwK\nICAgICAgL2YtMC0wIDcgMCBSCiAgICAgIC9mLTAtMSA4IDAgUgogICA+Pgo+PgplbmRvYmoK\nOSAwIG9iago8PCAvVHlwZSAvT2JqU3RtCiAgIC9MZW5ndGggMTAgMCBSCiAgIC9OIDEKICAg\nL0ZpcnN0IDQKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicM1Mw4IrmiuUC\nAAY4AV0KZW5kc3RyZWFtCmVuZG9iagoxMCAwIG9iagogICAxNgplbmRvYmoKMTIgMCBvYmoK\nPDwgL0xlbmd0aCAxMyAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEg\nNzkyMAo+PgpzdHJlYW0KeJzdOWt4VNW1a53HvPKYV5I5ZAJzJocEcIBAJgGCkRzyGINBSAjR\nmSAkgSABHwQnqKiQAKIhQgOSYhGuUKVWKJATQBNUSnxerfCJrdre0kq02GtVDKVYK5CZu86Z\nSQh81Nvvu/119+Scvddzr73W2nuvA4AAYIImYEFccE9N/anK/9gOEHcZgKlccH+DeMvvSy4C\nWPwEN99Zv+ieVTUvWQFsPQD6w4vuXnHnb9srvyYN+0imtG5hTW0MPNEBkNxGuAl1hIhrYzcR\nfJzg4XX3NDx4840GmeBzBE+/e+mCGoCHSbczl+DSe2oerGfXsGcI3kCwWH/fwvq+AzdPI5j0\nswXAwAkAPpNfTdbqwSXHMTqe1bFGA89yhMo7kXHCasOcHKvX6h0/zu62uu1Wt/UEt/DS9uns\nCX71xUY++5KD+wspJ12l4a85id8KMeCAkXKCTRcLOhCGGM3BgFHPJgYD7BDI84CQ5xmkFC2M\nlMpYLTZ3po3tH3szbZz0/d/+duEswvdnOzc++/zmLbt2tjGvhXaGNuB9uADvwiWhJ0PbcDza\nQudD74U+DH2JKYDwCgCuglNkvEM2sQAcD7h9DkCGNqc6oTfbm/jKG6dOqTYj7CAWM63fBB45\ngTMwTEwsz3GsTmdAwIYACGSxFbxCnteb4Y2o0HS4rXx2mtfqTtyBi0Kv463P4+3buNw/7f38\nkrBN1buI9MaSL4bBFFlMgXizIXFoohk4l2hIibfZYoIBmx4hBVL657BBjqBNZcuhaRyadyLm\nTuGzs9KlVJ1+xBT0ZiYlJsSjnv7ciYu8W57d2TSzeUXwx3FdCd+9/tHnJW0fBJuHMacblx/a\n/Mgjzbc1NK1cZt3zzrtHZj377N55T/m2aWueQXEaQraNhAVyjl7nTElMjQVITbOk6HSjbkiz\nWqyWhoBVsK+5lV54q9mKFt5qZZ0ulxAMuPSsMRjQq6H0RmKpmixkVM2b6/FoyxhkvhbgBJ2U\nmj5iYpI7cwItxIPZXm0weEU6feIw5Ib8488fh4WXh6O5eXvHz++c3/bcurUPbIl9kZb24VdP\nbXpGwXVvfPzaUevFxx4Nrt6x+r5lax9aGr//9beUx/cM46wHtRzMIL9P1OJpgwlyspW3MYwB\nebQnAGflggGD1YoxOh2Sz/PI7gyvan80HfsNtkpWdzbSOBHJz2hGN7tsb18ds+7o26FNTFZc\n6KkJFjyPeaHXMG8D+9Ll6T9iH9DNs/d9fUuC5t9Z5N+hZEMKzJOzbXbBkZAAdr1OsJOXk+w6\nbuiwZNoSyclsQoKjIZCgUx26SI9Jegzq1+qZiG/nzp0b3SqUGFr2DjjVlqO9VNdCxLVXPCrZ\n3YludgJ5lRsa+u6rt86LL+V8vXn3zzZMW5WnZLDuvrXO5QdOfofvnQ7DvucSP2jftm732InM\n37eFplZeIP/VRXMjCVKhVPYMtepiYxwAMTpWGm5NTkheHkhIYI3G+GDAHNsay5j4WNra4pWt\n7VXzoN9mzbP9ZmupENnf4BXt+nR1qMVfr5memKAugxty/qNvLqOO3Fu+L/vQ03vGHwy+8Xnn\n1sdWbf/pqjVteOJ0KITzcRbei82hT137Qp+Gzs2puvDxtue3rH7uZLvmfz50O3uZmwxJeEYO\n2w1mq81kNLJmGyc4DHaz3WE1moEvDYDzSQHXCNggYK2AswTMFzBLwOEC2gRkBLwg4BkBfy3g\n6wIeFnC3gIP5bxvEn6TxL4oIfDxIYOsPCgzmR0XAXQK2CfiogPUCVgs4W8BCAccJKAqYICAn\n4DkBewT8UMA3hX+Jf2KPIFdG+QeYBzgH2AZ0DuZhSvt1gYDdAm4SsElAQmYIaNGQ+nlzI20Z\ntaplkXbfoNZPH2jLBrWqa7n/F4loekV26VVZZU8dkU2pk4fotQ9jHBPtXoxnjt2SmT72hfnW\nUHn3GT5+Ous7+8tQdUHDxtDtMY/rvvNw2X1740d8EvcW03Hp7f17yrW8GUoHSC7/K0iEVrku\nzo46ZJhELpFzJJnMpQET3Zg6tjRg15kx0eXIcMx0VDkaHa2OnQ692ZFHw3bHMcdpR69Df2MV\njZgIjTUTa7uG5x3ybbXFDnnE6GLRMc5R7WBlB85d5vHMXUYrX6aeSJG7RrurMrV9TkvMjBxJ\nUrY3O4s2tiNR3S1DkU6nxYd/8pM1j5VkjZGKpvyG7bw8je1c+1Dbmtj1Bt8dNWu1NTWG/Mwz\n/HGIh1TZoocYE8uZ6Go3W0xOuh3z8q66a+wW20SvTr2AHVI6Y2188dUDr7TvP3rg6GEmAd14\n/L2TodGhL0Nfhcb+5jieQBfp7wzNwLmkn8Wp8hd021L18yiPDTxW8zibx0Ies3gczmMPjx/y\n+CaPh3nczWOEp5ZHkccEHkmu7gKPZzRyvUYYEO7mUdFk2vrFbuTRw9OdRDsdmXOa7pMaXyOP\nS3ks5VHmcZymO8I06X1Nxy5NNxnm0rARyV1XC/TyeJpH4j/GYzuPm3hs0qSIIUMTNPNXEn9w\nil4vg6uupO/1Mrw/szPUKNBxbqcodD4fmqFf9Y81auxiKXaeK7FjuRgTcCY1dsA6r40d1VF6\naYLNamFGeJNsVsZDwXv1QPsravAsodOhrPd+jR+gg36//uB4yBv6VK1/WHiB7ssv6a6KoxN/\nGNTJk2PsBrvTycUb6NQ3cKxLjLEn25OrAvbhduZWsx3ZKXbkqLfwdjvH87aqANWKzqoAZxuo\n7SBSDlTR+q9TEURvLk6ialK00tU/DJEuAIIyJ9izRqHac1+GvrnQ9yYDeG5D0wsvhb7Z0RY6\nhlO3PVUWeja0A4Ptu3Djqx/wq0N7V+4dmnAEL943P5Qf7At/H+LWRGrR9eTAm9S8pLr2XrmY\n1euB4wxG3swlIpQHEMJG7DHiaSN2G1Ex4k4jNhmx3oguI4IRzw0i7TLiJiPO1EjXRJtaZNV5\n0dJQ20VUYLK0zvWHDx/mxX37LvZwky+9TfFsJod/w82AZKiRc21GowmSTcnOFFsSJNF1lGSJ\nM5sg8WQKdqegkoLntHc4BXtScAC5KwXrU3Agf7T5M/Py+r2cM5AObmvWWFRvVTo5skZ46Vz0\nRmotK5tzwx2BNVsP6/YiwzLslOdWHPwZc+Cu+7MOPtO3kS0/egM/Omdm/dyO430ZZHNX6CKu\npnraSDlopWLawBtMMcC/MMcA2+nJ8Ayu5dPUSk6akC1l4+r0kQ/P8596YcmPpjavOhXJtQDV\nFslUWwyB4VSnVchjPTpXXLI9DcCeZIzT6caNTzKmjkwduTxgTkW7LjWVtVhSlgcsenbM8sHf\nDtH80kbXrzbpoJyYPRa187K/vGSz3P1Fhj1ScFjUTEv+xxefhZ95OLjur++d/OtjDY9v/SR0\nsXHd+pWN66QdG9c/jaO2bML1b/z+47daXk3gnIdX/PSdN3++4rCDSzrCxPU++MCKxuV9l9eu\na10Z+uPGyBcFC+oXYCxwzAzqh4GFMPHQCGEsxxp8EFfhk8zbzB/EdHGcOFnc504Nh9VvM9hF\nRU010VdG6Xai5wzQ/3lDmuMP+DTuwGfotyv6e5t+7+A71+GPob2uNqu2TyIWc8DTp5oeDATb\nriMT/4MW/OvNpL3NA7DlulxG7R37b5rz/0njj9NptpJO6kRYob2valTtJsADAGH13w4GvUO3\n/3utMES6w3AU2mHXVaRmWAXav1sMasfgDfiFNtoOG39A7RHYGx21wTZ4/J/yLYG1pGc3zX+l\nVRN2BfyEZu6Cn1M6p6KXZr0rSj0F715fFX6K78KTdP/dRe9Oem+n7fAwcx6eZGbBvcxv2dWw\nhm6RXbATF0Mr8VfDbpwD82BNVME8WAhLr1HaApvgZ/AQNF1B8avDf4O4y4fI8vWkZysshmUU\nSfPlYeHzkMX9GeJCH8Ix1kW2H4AXNZHV/bL6YnYJ8xLD9G0hYDMsoqcG/4vs3MhO/QFv/p+b\nbjVXBwnce2oOhX8TaiTbT1GEXiZvvC/fPKcy4K+YXT6rrHTmjFunl9wyrfhmX1FhQf5UOW/K\nTbk3Ts6ZNHFC9vhxGWPHjB45Ij1tuJTqdgkJVos5Pi7GZDTodTzHMgijRQWrixQ2TbT6aqQi\nqaZ4zGixSKgrHDO6SPJVK2KNqFDHpUvFxRpKqlHEalFJp65mELpakYnzzms45QinPMCJFjEX\nctUpJFE5USiJXVhZ5qfxxkIpICpntfGt2phL14A4AtxuktCsUq0VixTf/XUtRdVkI3bEmAqk\ngoWmMaOhwxRDwxgaKSOl+g4cOQW1ATOyaHIHA4Y4dVpaaVFNrVJa5i8qdLrdgTGjpynxUqFG\nggJNpaIrUPSaSnGxajo8IXaM7m7Z0GWB+dWe2FqptuYOv8LWkGwLW9TS8rhi9SijpEJl1ENn\nBFr5QmW0VFikeFStJbMG5im5MiWVwWkWSWz5Fmg50tmvr8bURDG6NMu3oA4VpkDBWX632pw+\n8nVLi08SfS3VLTVd4ab5kmiRWjpiY1vqi8jdUOonFV3hl59wKr4NAcVSXYeTA9Gl+2aVKPay\nOX6FSfOJdTWEob88yT3J6bYO8JT+MzKQW8g55GG3W3XDE10yzCdAaSrzR2AR5jsPgpzhCShM\ntUrp7qckVqiUpn7KgHi1RLEtKfe3KFzatFqpiDz+RI3SNJ+ya4kaGMmixP/d6ZZabFYxJyOg\n8Ypk1bTaxaLCp5OTSGqwAOWNKtJi0YD4v0e6s06aIN1qE3MkUqPqKZKKqqN/99cJpEAkRxd7\nIokw26/IhTSQa6IRK+oYl0ESNdUUsMWFWjCVDKleSZDyB6KrmlW0uNyviUTFlIQCBaoXRKWU\njCJtX4lFLdWFERNUXVKZ/wh4wz0dWaLzkBeyIFCoMicVUJalF7X4a+9UXNXOWtp3d4p+p1uR\nAxThgORfGFDTjjw0qsepJUdAy5XZ/pJyqaSs0j8pakiEoKrj0oquUSP5nRE1lICKIc0g+hkn\nGyBGCyFEHw2k/Fx6K/o0Az0WcriGVRM3P1f0oxP6uckMZZRYtLAwyqfCVynl1XQqKO7XplNB\n0lNQ7HQH3JE2ZjRDZDE6MUkYVKcW95PomCKCgfKzoFhDqb4U1KQX/dJCKSDViYpc6lfXprpH\n83LUGZrPo7GafRU0yFnkJnATuR9Qnan4PM7BzlVu1uABsPga8rR+sthikErKW1TlUlQhkOXT\nFFBTWJ5kdWpngbqhJTp7RQttaW1Dt3TIsrqZ6yarSqRptS1SuT9X46bzZKXzIXUuG5Rgyez8\nMaPpaMvvkLC5rEPG5vJK/xEq58Tm2f6DDDIF1fmBjuFE8x8RAWQNy6hYFakCogqommYRYND4\nnUdkgCaNymkIDV7QRV9OsweYCIewoIuJ4CyRidK1iWSqZxd0cRGK3M/NEc4QwTVpOK11gOoy\n2cTLBtkoxzJxjLMDVdRBwrxMFTx9Bh6KxTh0dpDULA3dhU0dRtkZ4WgiDjliYXPFlakrKv2H\nYoHEtDdNlK82ShehjoJN10qRWKsmyiOBupbqgLrZIIlCQ3+ooDSFwiRNIUN0sYpJWpivxEj5\nKj5PxedF8DoVr6cUxSQk8SaKfamCagbM8btpS4rJ7zpbLGfVSAXoUGmxfD5G+yJhhmz75KPf\npVeZc78FV6SOe0f+/mm1/+PDY5MuPd+3xbRE/1tQizxGk1C/DUA/JTQDCkyHLz1/8SHTkij+\nSrPrAE5wQShlcuAV6nfQs4ieGfRk0DOLnjqOyiCiD2X2QiOTAJ3Ux/K3wQv4n7Ce6M1E66I+\nENU5nZ6T2uSAfnoukPEEs7OpzqUU4z4kq+jrQN9DppL/jTsiHxam39HHzd304UAJF3u3+v9n\nmgo7zoLZcAd93zD0vZFBI2B2MxzlBU51UxDzADEHKnBKtM9HmWppF06l3kX9jeDFyYSfRD3R\nQUY96XVp753IyXuxuw/b+xD60DTzEoqX8NvSka7zvpGuv/pucJ3zeVxVvY29jLl3Zm9Vb2tv\ney8f8/mZYa4/feZzmT9D+TNfkuvTHp/r/Z7TPb09rNzjneDr8Qmub86GXWfxi4qvi7+q+DIT\nKv7yxRcV/10MFX+GsOuPN52uOI1sxSc3sRV/YMMu80eujxjtJf9KcPrefx2Pdue6XitNd736\ny5Gu8BEs7arvaupiu8LdcrjLlulzdeZ1zuxc2tnYubOzvVMvvIT1B3cdVA6y5oO46UVUXkTz\ni2gwH8o71HuIbVI2KYyidCsnFTajPa+d2bVf2c907z+5n8nYl7eP2fkL7N57ci8zc0/rHiZj\nz9I9x/aE93A7tg93lW7HpVvx2Fbc6hvq+nGbw2Vuc7U1trW2hdv4cZvlzUzTZqxvbWplNrVi\nd+vJVmbmhqoNSzewj/nCrp3r8NG1410NwTxXkBay9N5c172+bFcyChVDvEKF3stW6Gjp1USr\noucO33jXnMpiVyX19kxbBU/u4TLZirtZjGVz2ens3ewjLN9bFpZryxi5LHuSTy5LG+l7vxSn\n+URXMWm+mZ52H5729fqYJh8mZSZWWNFcYck0V1C1WoGALpc5z1xlbjRzZnOGeaZ5qbnVfNoc\nNuvzCNdrZpcCzgRsSkIeu3BTx+xyj6ekSx+mykdfOkfBZiWtXH3LZZWKrlmBiso5/g7EHwXW\nbdwI+UNLlMxyv1I9NFCi1NJAVgdNNLAM7UiC/ECwIdiw3KM2jAygweMJBtURqpAnQtNG6AkS\nmdhIiICG5RD0BBswGGyAYAPhgziPxsEgBAkfRBKhJ+iJ6h/QRBPMI0X0aohMEQySXJD0BKPT\nCfPgfwCC2zqjCmVuZHN0cmVhbQplbmRvYmoKMTMgMCBvYmoKICAgNTA3MAplbmRvYmoKMTQg\nMCBvYmoKPDwgL0xlbmd0aCAxNSAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3Ry\nZWFtCnicXZHPbsMgDMbvPIWP26FKQlLWSSjS1F1y2B8t2wOk4HRIC0EkPeTth3HVSTsk/vHh\nD4xdHLvnzrsVivc4mx5XGJ23EZf5Eg3CCc/Oi0qCdWa9rvLfTEMQRTL327Li1PlxFlpD8ZE2\nlzVucPdk5xPeCwAo3qLF6PwZ7r6OPUv9JYQfnNCvUIq2BYtjOu5lCK/DhFBk866zad+t2y7Z\n/jI+t4Ag87riksxscQmDwTj4Mwpdli3ocWwFevtvrzqw5TSa7yEKXVNqWaYgtMTMKSS9Yr0i\nlsySuGauiRvmhnjPvCdWzCrxw2PmFIRWrCvS5YHvOlCO4RxDOudLym/43obuVayrfA7XqahO\nyV5J3prPTIEefn0htYBmdeutucSY2poHmvtJnXQebzMPcyBX/n4B1SKX4AplbmRzdHJlYW0K\nZW5kb2JqCjE1IDAgb2JqCiAgIDMwOQplbmRvYmoKMTYgMCBvYmoKPDwgL1R5cGUgL0ZvbnRE\nZXNjcmlwdG9yCiAgIC9Gb250TmFtZSAvWUtTSlJIK0xpYmVyYXRpb25TYW5zCiAgIC9Gb250\nRmFtaWx5IChMaWJlcmF0aW9uIFNhbnMpCiAgIC9GbGFncyAzMgogICAvRm9udEJCb3ggWyAt\nNTQzIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQog\nICAvRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3Rl\nbUggODAKICAgL0ZvbnRGaWxlMiAxMiAwIFIKPj4KZW5kb2JqCjcgMCBvYmoKPDwgL1R5cGUg\nL0ZvbnQKICAgL1N1YnR5cGUgL1RydWVUeXBlCiAgIC9CYXNlRm9udCAvWUtTSlJIK0xpYmVy\nYXRpb25TYW5zCiAgIC9GaXJzdENoYXIgMzIKICAgL0xhc3RDaGFyIDEyNAogICAvRm9udERl\nc2NyaXB0b3IgMTYgMCBSCiAgIC9FbmNvZGluZyAvV2luQW5zaUVuY29kaW5nCiAgIC9XaWR0\naHMgWyAwIDAgMCAwIDAgMCAwIDAgMzMzLjAwNzgxMiAzMzMuMDA3ODEyIDAgMCAyNzcuODMy\nMDMxIDAgMjc3LjgzMjAzMSAwIDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1\nNi4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgMCA1NTYuMTUyMzQ0\nIDAgMCAwIDAgMCAwIDAgMCAwIDY2Ni45OTIxODggMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDI3Ny44MzIw\nMzEgMCAwIDIyMi4xNjc5NjkgMCAwIDAgMCA1NTYuMTUyMzQ0IDAgMCAwIDAgMCAwIDAgMCAw\nIDAgNTAwIDAgMCAyNTkuNzY1NjI1IF0KICAgIC9Ub1VuaWNvZGUgMTQgMCBSCj4+CmVuZG9i\nagoxNyAwIG9iago8PCAvTGVuZ3RoIDE4IDAgUgogICAvRmlsdGVyIC9GbGF0ZURlY29kZQog\nICAvTGVuZ3RoMSA0MDA0Cj4+CnN0cmVhbQp4nK1Wa3Ab1RU+d1cvPyU5thGIsKts7DrIxonl\nhMQ41sayNjIOWH6oXdk0lhLbOCHEpjIUwsNyIWCUpE7AzZSGmeQHpSQQfGUTrDDQuPRPoZhk\npjBMS2kMBQo0qVs6YSjGUc9dyc5jCn/KHe2953znde85Z1cXCABkQBR4sGy+q1+88U8NXwGQ\nEQBuqLvv1tsfCL9oBdBdDWB84dZt93Q/Ex+YRYsn8fmypyvcmQW74gBZp5Bf1YNAzgg/AJBt\nQn5pz+39d2ftJGibXYq8aVvv5jD6rkO+Evns28N39/F38B8iKSMv9v2oq2/u+fX1yIcAeA9w\nMAWgr9AP4u6MIMg5nEHPG/gMk57XIeSeKp+y5pE1a6wuq2vF8kUOq2OR1WGd0nXNHtjAT+kH\nvxrQr5y9QvcpOgcCjckzeqeuCgS4US7JyMy06nOv5BcXFvK5vOgwO8odXAZv0+cW5PqDBebM\nArjaH4RCcDvB5nY7reBykY6NP7TmXaGFs7pcWlD9kuKVVkdBPmeUVuWtJUsMxpU1xOUokKz5\nha7rCwy67kj3+e2V171cWVV76CrbbZW6os+urfz+Tfl3PMy95fvovPPYm+Tk6/5C865s64Nz\nLRu8psF8/Rv6N+B+PHUB3KPNlww8QT78GCB5hnEX5vM/gO90mFLLC/AKjMKhS0RD8ADOz12C\nnYDfwrMadQD2fIvb43AkTY3AE/DIN+pthQfRz1MY/8IIIXoP/BwjJ+BXWNIlxIVRb0tL34XX\n/rcr8j55DR6DZ1DzMZjA+QB2973c5/AY1wzbuXf4QfgJPIpnPEi2wDDqh+Ap0g4bEU2NjdAF\nvZc5jcFe+CXswDdnYegHk/+GnK/HceePop/9sAXuwEqav74m+TlU6j6GnPNvwQlewL0/D8c0\nk8F5W6OP38q9yHFzjyOzD27FJ0z+iPvcw6/7lmz+38MwqOuBfN3vWQ8l/3B+APf+LlboJczG\nSXl9e1tQDbS2NDf5G2++aUPDjfW+9Yq3zlO7TnbXrK2+oWrN6utXrVyxvPy6stKS7xUXLZWW\nOARbvtVizs3JyswwGQ16Hc8RKBUpCXkpXyRalbDklcK+slLRa+upKyv1SkqIimGR4qIrlnw+\nDZLCVAyJtBiX8EVwiMqo2X2ZppzSlBc0iUWshmoWQhLpVJ0kJkhbk4r0njopKNKzGn2TRuuK\nNSYHGYcDLbRdsd2KXqrc1RPzhnCPJJ6V6ZE8XZllpRDPzEIyCylaIvXFSUkN0QiuxFsV58CU\nw8LiSb3hTupvUr11docjWFZaT3OlOk0EHs0lNXioUXMpbmFbh11ivHQytjthgU0hZ3an1Bm+\nRaV8GG1jvDcWe4RanXSZVEeX7fjQhifvoqVSnZc6mdeG5oU4DRdCEqovskhi7BzgcaSzZy5F\nwmnEUGQ5B4yknIeSZtXBhl3BXMdiiiQqsVAsnEhGN0miRYrFs7NjfV5MN/hVdJFIvrTLTpXd\nQWoJ9ZCqYProSnMDXdTUrlKuSBF7wojgzy05Vtsd1gUd/zeJAdOCycEMOxwsDbsSMmxChkab\n1BQvwib7GMjlziDlQkwyOS8pCDBJdF6yYB6SsLYNLWqM6orqOyUvZnxXmEY3YXdtZYWRLDT3\nC7tDiuVZxTXlQU1XxF3Vd24Rqb4Yk4RWFxtg3zCTmEVjcr9ILWftGKDYmieukdAN8+OVvKH0\n764eGzoQMdE+Z6oRWlUq1yEhh9MV88aXl6NFOIQF21KnFZOWS300X6pdqC7blndLi6qZpM1o\nvodCaHPaipZ7tfdK9MZCdaktMF9Sk3ocXMnpeKVoH3dBJQTrmHKhB7us2BtTO7upELJ34nvX\nLap2B5WDWOGgpHYFWdthhpZN27XmCGq90qo2tEgNTW3q6vRGUgLmTlfkvcyNpNpTbrABqanI\nJKqcnQ+iogUBUUFCqq3GmRqLTPhYMOEayhq3tlpUiR3mtXEbdJno7apL6zH+Eqd61k4e37w3\nA2PRj8dndwQdqVFWyqFYTAdGCxNLqm9ehJ8pFJiwPz0+DWK5tLGmF1WpSwpKPSKV/So7G0uP\nluV0MrScp2vVegl3UbIwTeBA8TzDkkkVp/3i5NL1Gr/A+i4T18+LxZhJamiJMedS2iHgzusp\nsBaWV1vt2reAvdASfntFC77S2gsdi8sye5l7qpgTqb4zJrWo1Zo2fk/ut+9gsfKggTS01paV\n4qetNi6Roaa4TIZa2tTjFryvDbWqYxzhPKHaYHwpytTjIoCsoRxDGcgYkTHMUzMyJk3fflwG\niGpSnQZo/OYEAQ0zzWMENie4FGZJBSrWAsl4N9yc0KUk8ry2DjFTCotqmDbiwFImZ+plk5wh\nZ3M5nD1OGDSGyEt4/80gMJ5Ncog9jlbNGpwg0XiGbE9pRFFDTu1wKHAhdKBNHc8GNNNmDFTL\nBraLrQeLjX8rXrGTNcp9wZ5YKMheNijE0uCPUCLVYJmkGtyIIZtmSl21NEuqZbib4e4UbmC4\nEVuUFBI0j2Lt/ZSwDmhXHfhKile9Zo9ZzrJKBfGjErN8VAbsPs9d+cSbD72a2WGuPgdC6h73\nO/k/v2Dre/deVzj79NzjmVuN7wC75HGaBbsfg7Hm/M3gyXxh9umvdmRuTeMXBmcAmNLvhMY0\nvwGfL1PxSDO0wi1gQG8WKEcKuKc4HdaDrHNg8txAyBoIkJr0WktkvMMKZB2uAq43gItUIb4a\nV5SDTIzoV9Dmg0QnHyGTc2R0jsAcyWycJeIsOecvET5XSoR/KdcK/1ScQsfMwAxnnmmc6ZgZ\nnhmd0Wd99OE1wl8/UATzB0T+QCkU3p9WhJPTp6dnpnl52rVKmVZswj/OJoWz5JPAGd/fA59V\nQODTTz4J/M0HgY8hKby39nTgNOEDf1nLB/7MJwXz28LbnDbJr9vsyslXySuT1cJv/MXCy78u\nEZLHiT/Rl4gm+ERyUk4m8ioUYcI90TjROzEwcXBidMJoe5H0jR0ao2O8eYzsPUboMWI+Rkzm\ncff4zDgfpXspR+kkPUX58lH3KHfoKD3KTR49dZQrf879HHfwWTJ55NQRrvHw8GGu/HDv4ROH\nk4d1Tx5YKvgPkN795MR+sl9ZLPxs5ArBPCKMDIwMjyRH9Mv3yfu46D7SNxwd5vYOk8nhU8Nc\n4+6O3b27+YeVpHBwJ3nowRVCf8QtRPAgvdurhe3KSuEqYgtc6bIFjC4+YMCjh1DWgc8tygqh\nvc0ntOG6qCIvoMf06Cr4wDaeZPPV/AZ+G38fr59pSsqdTZzctHK1IjcVlSgn/aReEQUfel6P\nz6hCTiszChdVSGFFQcBKzAFLhTmAt8QAASIIZre5wzxg1pnN5eZGc6952HzanDQb3YjNmPle\nII1AooVETxJkb7y1xelsSBiTeOMw+tspGaJFLWyWm9qoYYhCoK1djRPy0+DOPXugdnEDrWhR\naWhxsIF2IiEzIoqEZXG8EGqDkf5I/51ONkiKgH6nMxJhFGGcMyXTKOKMoBjV0AiZ/jsh4oz0\nk0ikHyL9iEfIRqQjEYggHiFogk/Emfa/4AkDbERHOPWnQkQiaBdBP5F0ONtG+C80wPrmCmVu\nZHN0cmVhbQplbmRvYmoKMTggMCBvYmoKICAgMjY3MQplbmRvYmoKMTkgMCBvYmoKPDwgL0xl\nbmd0aCAyMCAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicXZDBasMw\nDIbvfgodu0Nx0l1DYHSXHNqNpX0Ax5YzwyIbxTnk7ae4oYMJbJD+/zO/pc/de0chg/7kaHvM\n4AM5xjkubBEGHAOp+gQu2Lx35baTSUoL3K9zxqkjH1XTgP4Scc68wuHNxQFfFADoD3bIgUY4\n3M/9Y9QvKf3ghJShUm0LDr08dzHpaiYEXeBj50QPeT0K9ue4rQnhVPr6EclGh3MyFtnQiKqp\npFpovFSrkNw/facGb78NF3ct7urVVsW9zzdu++QzlF2YJU/ZRAmyRQiEz2WlmDaqnF9D03CV\nCmVuZHN0cmVhbQplbmRvYmoKMjAgMCBvYmoKICAgMjI0CmVuZG9iagoyMSAwIG9iago8PCAv\nVHlwZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1lIC9UWllBVEUrTGliZXJhdGlvblNh\nbnMKICAgL0ZvbnRGYW1pbHkgKExpYmVyYXRpb24gU2FucykKICAgL0ZsYWdzIDQKICAgL0Zv\nbnRCQm94IFsgLTU0MyAtMzAzIDEzMDEgOTc5IF0KICAgL0l0YWxpY0FuZ2xlIDAKICAgL0Fz\nY2VudCA5MDUKICAgL0Rlc2NlbnQgLTIxMQogICAvQ2FwSGVpZ2h0IDk3OQogICAvU3RlbVYg\nODAKICAgL1N0ZW1IIDgwCiAgIC9Gb250RmlsZTIgMTcgMCBSCj4+CmVuZG9iagoyMiAwIG9i\nago8PCAvVHlwZSAvRm9udAogICAvU3VidHlwZSAvQ0lERm9udFR5cGUyCiAgIC9CYXNlRm9u\ndCAvVFpZQVRFK0xpYmVyYXRpb25TYW5zCiAgIC9DSURTeXN0ZW1JbmZvCiAgIDw8IC9SZWdp\nc3RyeSAoQWRvYmUpCiAgICAgIC9PcmRlcmluZyAoSWRlbnRpdHkpCiAgICAgIC9TdXBwbGVt\nZW50IDAKICAgPj4KICAgL0ZvbnREZXNjcmlwdG9yIDIxIDAgUgogICAvVyBbMCBbIDc1MCA2\nODkuOTQxNDA2IF1dCj4+CmVuZG9iago4IDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9TdWJ0\neXBlIC9UeXBlMAogICAvQmFzZUZvbnQgL1RaWUFURStMaWJlcmF0aW9uU2FucwogICAvRW5j\nb2RpbmcgL0lkZW50aXR5LUgKICAgL0Rlc2NlbmRhbnRGb250cyBbIDIyIDAgUl0KICAgL1Rv\nVW5pY29kZSAxOSAwIFIKPj4KZW5kb2JqCjExIDAgb2JqCjw8IC9UeXBlIC9PYmpTdG0KICAg\nL0xlbmd0aCAyNSAwIFIKICAgL04gNAogICAvRmlyc3QgMjMKICAgL0ZpbHRlciAvRmxhdGVE\nZWNvZGUKPj4Kc3RyZWFtCnicVZFRa4MwFIXf/RXnZaAvaqKVtkgfqlDGGEi7p409hBisMIwk\ncaz/fjdaO0ZI4H6cm3NuwpAGPMOGTrC8CHiOrNgFZYnk7TYqJI3olA0AJC99a/EBjhRnfM6o\n0tPgwILDYe5ojG4nqQxCKXqjwWK2jXOEV+dGu0+SmXZGjNde2libLoqWa4wSrtdDLZxCWO95\nyjfpjjHanKXv0Xr/XyI8katvbYRRPoIPNYNX1fbiqH8oaUprW+TIM/7IOziSW+QP/cnoaURZ\n+sLXi8dMV3QhasRgR+8lbyt+hjOTWquKVLX67qU6n44eUmbPz8rqyUhlkT08L9Qo3RLd0gf8\nG68STnzp7j4dPf59OBL9ApSCbiAKZW5kc3RyZWFtCmVuZG9iagoyNSAwIG9iagogICAyNzQK\nZW5kb2JqCjI2IDAgb2JqCjw8IC9UeXBlIC9YUmVmCiAgIC9MZW5ndGggMTAxCiAgIC9GaWx0\nZXIgL0ZsYXRlRGVjb2RlCiAgIC9TaXplIDI3CiAgIC9XIFsxIDIgMl0KICAgL1Jvb3QgMjQg\nMCBSCiAgIC9JbmZvIDIzIDAgUgo+PgpzdHJlYW0KeJxjYGD4/5+JgZuBAUQwMXJMYmBgZOAH\nEhzVIDFOIEthIZAwZAcSnEIgYiqIuxrEAhGyN0HERyAhXwoieoCE0gUgoTsfRGwHEnrPQMRf\nIGEgCLGIEUQwMxobAcWMPRkYAEF8EA0KZW5kc3RyZWFtCmVuZG9iagpzdGFydHhyZWYKMTMx\nMjkKJSVFT0YK",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/FA36EC32DBCA496BB10ACAF0B5D542C6/t2f2wbxddu.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 360,
       "width": 720
      },
      "image/jpeg": {
       "height": 360,
       "width": 720
      },
      "image/png": {
       "height": 360,
       "width": 720
      },
      "image/svg+xml": {
       "height": 360,
       "isolated": true,
       "width": 720
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 定义成功次数和总试验次数\n",
    "y <- 0:6  # 成功次数 (0到6)\n",
    "n <- 6    # 研究总次数\n",
    "pi_values <- c(0.2, 0.5, 0.8)  # 三种不同的成功概率\n",
    "\n",
    "# 创建一个空列表来存储每个概率的结果\n",
    "plots <- list()\n",
    "\n",
    "# 循环生成每个概率的图\n",
    "for (i in seq_along(pi_values)) {\n",
    "  pi <- pi_values[i]\n",
    "  # 计算似然值\n",
    "  likelihoods <- dbinom(y, size = n, prob = pi)\n",
    "  y_1 <- dbinom(1, size = 6, prob = pi)  \n",
    "\n",
    "  # 绘制图形\n",
    "  data <- data.frame(y = y, likelihoods = likelihoods)\n",
    "  y_label <- ifelse(i == 1, \"f(y|π)\", \"\")\n",
    "\n",
    "  p <- ggplot2::ggplot(data, aes(x = y, y = likelihoods)) +\n",
    "    geom_segment(aes(xend = y, yend = 0), color = \"black\") +\n",
    "    geom_segment(x = 1, y = 0, xend = 1, yend = y_1, color = \"black\", size = 1.5) +\n",
    "    geom_point(color = \"black\", size = 3) +\n",
    "    labs(\n",
    "      title = paste(\"Bin(\", n, \",\", pi, \")\", sep = \"\"),\n",
    "      x = \"y\",\n",
    "      y = y_label  \n",
    "    ) +\n",
    "    scale_y_continuous(expand = c(0, 0), limits = c(0, 0.5)) +\n",
    "    papaja::theme_apa()\n",
    "  \n",
    "  plots[[as.character(pi)]] <- p\n",
    "}\n",
    "\n",
    "options(repr.plot.width = 12, repr.plot.height = 6)\n",
    "gridExtra::grid.arrange(grobs = plots, ncol = 3)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1ca239ce",
   "metadata": {
    "_id": "45541A93BE7B4F15B21B9284010EE053",
    "id": "EAC9DD2E5CC04F4E9B5A310E2D8E433A",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 先验概率模型(**Prior** probability model)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c71500a9",
   "metadata": {
    "_id": "8F39E31E1E4D40299FC0523F74F844E3",
    "id": "DEA16C3B9F6A4A29B25B00DC4E33DD54",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**建立先验模型**  \n",
    "\n",
    "从前面的描述可以看到，二项分布的参数$\\pi$也可以变化，也可以成为一个随机变量。  \n",
    "\n",
    "- 例如，我们想当一个更有深度的观察者，融合了乐观派、悲观派和中立者三者关于$\\pi$的估计。  \n",
    "- 但是，我们对三种观点的可能性有不同的信念。  \n",
    "\n",
    "假如我们总体上是一个乐观派，但不排除悲观派的观点，我们给三派观点分配了一定的概率(先验)。  \n",
    "- 例如，设定 $\\pi_{0.2} = 0.1$， 或者 $\\pi_{0.2} = 0.5$。 但需要所有$f(\\pi)$的总和为1。  \n",
    "\n",
    "\n",
    "| $\\pi$\t    |0.2  |0.5 |0.8 |Total  \n",
    "|---------- |-----|----|----|-----|  \n",
    "|$f(\\pi)$   |0.10  |0.25 |0.65   |1|  \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2f7a5520",
   "metadata": {
    "_id": "C4F7FE361F3B4A6F9838D276D5CE8611",
    "id": "AC428410F4FF4E83B5195660F4B39795",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "我们设定的$\\pi$ 的数量也是可以变化的。  \n",
    "\n",
    "- 例如，我们还可以将一种非常悲观的可能性也纳入进来，认为该团队成功率为0.01，即 $\\pi = 0.01$。  \n",
    "- 那么新形成的先验分布可能如下。  \n",
    "\n",
    " \n",
    "| $\\pi$    |   0.01  | 0.2  | 0.5  | 0.8  | Total |  \n",
    "| -------- | --- | ---- | ---- | ---- | ----- |  \n",
    "| $f(\\pi)$ |  0.10   | 0.10 | 0.25 | 0.55 | 1     |  \n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2b48213a",
   "metadata": {
    "_id": "38E98221461549329E95D8DA03AD6D66",
    "id": "C76FEDA044DC476893D94F53C02B55D5",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 后验概率模型(Posterior probability model)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "112bc658",
   "metadata": {
    "_id": "64BEDA6DE1DD49E18C1669669168502C",
    "id": "74576A5C0B1543829DA243AE6CDB0F98",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "前述第一个先验模型，我们总体上是乐观的，认为团队高成功率的可能性很高 ($\\pi_{0.8} = 0.65$)。  \n",
    "\n",
    "\n",
    "\n",
    "| $\\pi$\t    |0.2  |0.5 |0.8 |Total  \n",
    "|---------- |-----|----|----|-----|  \n",
    "|$f(\\pi)$   |0.10  |0.25 |0.65   |1|  \n",
    "\n",
    "\n",
    "\n",
    "然而，最终结果发现：该团队只成功复现一次。  \n",
    "\n",
    "这个新的数据会如何改变我们的信念？"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3b3fc3d5",
   "metadata": {
    "id": "5BC33CD0A9004643B01E3DF491EC1D96",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "我们可以综合先验和似然，根据贝叶斯的思路，计算后验概率。  \n",
    "\n",
    "其中 团队成功复现的概率从降低为。意味着，他成功率为0.2的可能性是最大的 。  \n",
    "\n",
    "左图为先验模型  \n",
    "中间的图为似然模型  \n",
    "右边的图为后验模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "7a7917de",
   "metadata": {
    "collapsed": false,
    "id": "FDC31B76CA524D0A8311241FB4834472",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nMVY22ocRxB9n6/ox9mHbXf1vcHxgyAEQgJxsmCC7Adn\nJTlxpBjLgRDIx+f0dWZ6JhLZFTZiR1Nnq6tqui59dogJ/O0JF2UFO94NHwdi8e/+HXv2VrB3\nn4aoQUL4pHF/zW4SopSdgJfsYw++Yn8USz9+Uy0RJ6uCs+wvfPUtPu+HyzdMcMGuBhLse9bZ\n+CkZNpZ7Aia584ZJp7gUCv8tV9YtXU1BP7ooP4WIS/INwhTcCW8t/Wd8XnLhNJM2cOsku2uA\nkzwEyZzjIviVWNSPFRikRRzGTPY6sepfbARJwfBATJLgWgfE0ADFnYMkeFB6LWb1Y0UGJoXj\npFRb34ltwVYQSgTutGRGciMdgmiA4V5riJo7a1diVj9WYGA6IDGuLe/Epn+RKsGlvWSKacHJ\nyJr7FlXJvYzPEYxDGsVmGl3gxttZGgsQ3Ua7t6XyCDnEPsBhCGc5pKC4lnKRtIz0LpWIuwSP\n0rizXCqkUxo9z1AGeo+95VmTbluurVXs3LFlr0W7gitBAY20vkEVXRxgiLsQvDBl/jRRBu6t\nkp6YIjSR9I6IHe6GZzd7scccYoebYUQwu8N7hOe4olizh6sIyi1Qz0CLfGbURvTrAwKVrH6w\nBUagXDeebLZlWUUqVCC6pKlUYFIhQ1yqSaPIkwKGBBp/Uihy2r+ak9VeK/gRMDMPqXuIWsxk\nUj9vVjehMTXGw6TUkJmWVJTG5aTVkJlWK6ymtVVqp5cE9kV4ExQOIOm59yZOhq4kLlP698Yq\nl3L+5oDK1VwYHQeqiFm/TGmvKj6pxAqosy2GIItvycgHVB95Z5jCUDKSNFKWvdKestfnQgh6\nkeorrtmn9XDrVYhTjzA1go0mVtH+cP9ht5du/CVd3+Lqy/1v6f52dv/nDpe/8yMpFBnCCiXO\nJpJ1GCcpXGQhYHj41DbwtNuTGe93SkRzZvywkzaLDNbNeIOrHV+PyX4Ksjzc5fMXSuQnbF+1\n+Hd+fL2rW9jO3nh0bzCDFXwSN1hZKQMzyBPoweOrTuIHmnw6wa3hBuf53QSgcB1BVIkA9GJW\nP1ZgYBazAAXflndi1d86mg1aFIOIrEYP+jheKuA4WgcHgk2MYC3nBceKDIBAFTRNFjqxLtgK\nw2qTjnAlVB6DE2ARPUEWiROs5bTgWAEQldhHpJuFXm4rMkvQ8SsTj1CtzzpCNVopDs5ZNs0m\nTzDSx92AS0JI57g0OP8iLZhlryC9T5sfHD7tWR6tVmVWtzypp+EJrcemw2vZdecdCwpp+YJU\nQXm75Ar946ajMStNbKEqzelCUWp8oerMCENRaYyhqmxRhvW2W/y8eIQztMpuZ/hWretAHWto\nyJwhYbAsWUNDZlqtzJrWVuGdXh5a+C9AG4w0J9IGFUnhZ+cNOv5S3eQN30WekBjD77u9ovE6\nyrdRTuCvUfxQLma8ineZUKSFJ/CJf3ZKjj8ntvIVDMmRkqE1y4g/2TZYxgo+iWWsrOTh52IJ\n/W+W8fiqk1iGM3rJMhqQaYVD5c1YRhMrayhAYxlteSc+xDI8WnrBMhqQWYWHsTnLmORKGgoy\nsYxmoRMfYhnB05JlTEBmFcj1gmVMcuEMBZhYRrXQyx3LcEY8DctwGPMLllGB/gD2Vj8Ry/Dw\ntWQZFel9BuefhGUE/AZdsIwJOJNltB5rx13XdWf++BT0JVmGk3LJMvrHjU9XlCaWUZXmLKMo\nNZZRdWYso6g0llFVtljGettJCPnoq4la2tO7iY1i99J1NKMhM62AUlrSjIbMtWqdTVoblXdG\nfaD7Pz/N8JZOpBk2MsnPTjM8qQdfTyQi8Qk8Q8BcfB9x3d5SPO1LC5AM9RDJeDn8C+QpEbQK\nZW5kc3RyZWFtCmVuZG9iago1IDAgb2JqCiAgIDEzODMKZW5kb2JqCjMgMCBvYmoKPDwKICAg\nL0V4dEdTdGF0ZSA8PAogICAgICAvYTAgPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0Zv\nbnQgPDwKICAgICAgL2YtMC0wIDcgMCBSCiAgICAgIC9mLTEtMSA4IDAgUgogICAgICAvZi0w\nLTEgOSAwIFIKICAgPj4KPj4KZW5kb2JqCjEwIDAgb2JqCjw8IC9UeXBlIC9PYmpTdG0KICAg\nL0xlbmd0aCAxMSAwIFIKICAgL04gMQogICAvRmlyc3QgNAogICAvRmlsdGVyIC9GbGF0ZURl\nY29kZQo+PgpzdHJlYW0KeJwzUzDgiuaK5QIABjgBXQplbmRzdHJlYW0KZW5kb2JqCjExIDAg\nb2JqCiAgIDE2CmVuZG9iagoxMyAwIG9iago8PCAvTGVuZ3RoIDE0IDAgUgogICAvRmlsdGVy\n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\niERwXAT5RBLTCfPIfwFGsP1aCmVuZHN0cmVhbQplbmRvYmoKMTQgMCBvYmoKICAgNjQwMwpl\nbmRvYmoKMTUgMCBvYmoKPDwgL0xlbmd0aCAxNiAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNv\nZGUKPj4Kc3RyZWFtCnicXZLPboMwDMbveQofu0MFBAirhJCm7sJhfzS2B4DEdEgjRIEeePvF\ncdVJO0B+ON9nOzjJuX1u7bRB8u4X3eEG42SNx3W5eo0w4GWyIpNgJr3dvuJbz70TSTB3+7rh\n3NpxEXUNyUfYXDe/w+HJLAM+CABI3rxBP9kLHL7OHYe6q3M/OKPdIBVNAwbHkO6ld6/9jJBE\n87E1YX/a9mOw/Sk+d4cg43fGLenF4Op6jb63FxR1mjZQj2Mj0Jp/e/LElmHU370XdU7SNA2L\nqCVGDkuIS45L4oK5IFbMiviR+TFwyXlKylOxtyKvGiOHJTDHVYxnzBnxiflErJk15eG6FdWt\nWFORRnItSbUU96OoH8n9SOpHsl6SvuCcBeVUA+sH4pK5JGavIq/iuirWZW9F3pJzlpQzN3x2\nQ8xnyeksVc76PP7821+mMdB9uc9XX70Po42XKs6UpjlZvN87tzhyxecXYA+yhAplbmRzdHJl\nYW0KZW5kb2JqCjE2IDAgb2JqCiAgIDM1NwplbmRvYmoKMTcgMCBvYmoKPDwgL1R5cGUgL0Zv\nbnREZXNjcmlwdG9yCiAgIC9Gb250TmFtZSAvWkxTTkJHK0xpYmVyYXRpb25TYW5zCiAgIC9G\nb250RmFtaWx5IChMaWJlcmF0aW9uIFNhbnMpCiAgIC9GbGFncyAzMgogICAvRm9udEJCb3gg\nWyAtNTQzIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkw\nNQogICAvRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAv\nU3RlbUggODAKICAgL0ZvbnRGaWxlMiAxMyAwIFIKPj4KZW5kb2JqCjcgMCBvYmoKPDwgL1R5\ncGUgL0ZvbnQKICAgL1N1YnR5cGUgL1RydWVUeXBlCiAgIC9CYXNlRm9udCAvWkxTTkJHK0xp\nYmVyYXRpb25TYW5zCiAgIC9GaXJzdENoYXIgMzIKICAgL0xhc3RDaGFyIDEyNAogICAvRm9u\ndERlc2NyaXB0b3IgMTcgMCBSCiAgIC9FbmNvZGluZyAvV2luQW5zaUVuY29kaW5nCiAgIC9X\naWR0aHMgWyAyNzcuODMyMDMxIDAgMCAwIDAgMCAwIDAgMzMzLjAwNzgxMiAzMzMuMDA3ODEy\nIDAgMCAwIDAgMjc3LjgzMjAzMSAwIDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0\nIDAgNTU2LjE1MjM0NCAwIDU1Ni4xNTIzNDQgMCA1NTYuMTUyMzQ0IDAgMCAwIDAgNTgzLjk4\nNDM3NSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNTU2LjE1MjM0NCAwIDAgMCA2NjYu\nOTkyMTg4IDAgMCAwIDAgMCAwIDAgMCA2NjYuOTkyMTg4IDAgMCAwIDAgMCAwIDAgNTU2LjE1\nMjM0NCA1NTYuMTUyMzQ0IDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDI3Ny44MzIwMzEgMCA1\nNTYuMTUyMzQ0IDIyMi4xNjc5NjkgMCA1MDAgMjIyLjE2Nzk2OSAwIDAgNTU2LjE1MjM0NCAw\nIDAgMzMzLjAwNzgxMiA1MDAgMjc3LjgzMjAzMSAwIDAgMCAwIDUwMCAwIDAgMjU5Ljc2NTYy\nNSBdCiAgICAvVG9Vbmljb2RlIDE1IDAgUgo+PgplbmRvYmoKMTggMCBvYmoKPDwgL0xlbmd0\naCAxOSAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgNDAwNAo+Pgpz\ndHJlYW0KeJytVmtwG9UVPndXLz8lObYRiLCrbOw6yMaJ5YTEONbGsjYyDlh+qF3ZNJYS2zgh\nxKYyFMLDciFglKROwM2UhpnkB6UkEHxlE6ww0Lj0T6GYZKYwTEtpDAUKNKlbOmEoxlHPXcnO\nYwp/yh3tved853XvOWdXFwgAZEAUeLBsvqtfvPFPDV8BkBEAbqi779bbHwi/aAXQXQ1gfOHW\nbfd0PxMfmEWLJ/H5sqcr3JkFu+IAWaeQX9WDQM4IPwCQbUJ+ac/t/Xdn7SRom12KvGlb7+Yw\n+q5DvhL57NvDd/fxd/AfIikjL/b9qKtv7vn19ciHAHgPcDAFoK/QD+LujCDIOZxBzxv4DJOe\n1yHkniqfsuaRNWusLqtrxfJFDqtjkdVhndJ1zR7YwE/pB78a0K+cvUL3KToHAo3JM3qnrgoE\nuFEuycjMtOpzr+QXFxbyubzoMDvKHVwGb9PnFuT6gwXmzAK42h+EQnA7weZ2O63gcpGOjT+0\n5l2hhbO6XFpQ/ZLilVZHQT5nlFblrSVLDMaVNcTlKJCs+YWu6wsMuu5I9/ntlde9XFlVe+gq\n222VuqLPrq38/k35dzzMveX76Lzz2Jvk5Ov+QvOubOuDcy0bvKbBfP0b+jfgfjx1AdyjzZcM\nPEE+/BggeYZxF+bzP4DvdJhSywvwCozCoUtEQ/AAzs9dgp2A38KzGnUA9nyL2+NwJE2NwBPw\nyDfqbYUH0c9TGP/CCCF6D/wcIyfgV1jSJcSFUW9LS9+F1/63K/I+eQ0eg2dQ8zGYwPkAdve9\n3OfwGNcM27l3+EH4CTyKZzxItsAw6ofgKdIOGxFNjY3QBb2XOY3BXvgl7MA3Z2HoB5P/hpyv\nx3Hnj6Kf/bAF7sBKmr++Jvk5VOo+hpzzb8EJXsC9Pw/HNJPBeVujj9/Kvchxc48jsw9uxSdM\n/oj73MOv+5Zs/t/DMKjrgXzd71kPJf9wfgD3/i5W6CXMxkl5fXtbUA20tjQ3+RtvvmlDw431\nvvWKt85Tu05216ytvqFqzerrV61csbz8urLSku8VFy2VljgEW77VYs7NycrMMBkNeh3PESgV\nKQl5KV8kWpWw5JXCvrJS0WvrqSsr9UpKiIphkeKiK5Z8Pg2SwlQMibQYl/BFcIjKqNl9maac\n0pQXNIlFrIZqFkIS6VSdJCZIW5OK9J46KSjSsxp9k0brijUmBxmHAy20XbHdil6q3NUT84Zw\njySelemRPF2ZZaUQz8xCMgspWiL1xUlJDdEIrsRbFefAlMPC4km94U7qb1K9dXaHI1hWWk9z\npTpNBB7NJTV4qFFzKW5hW4ddYrx0MrY7YYFNIWd2p9QZvkWlfBhtY7w3FnuEWp10mVRHl+34\n0IYn76KlUp2XOpnXhuaFOA0XQhKqL7JIYuwc4HGks2cuRcJpxFBkOQeMpJyHkmbVwYZdwVzH\nYookKrFQLJxIRjdJokWKxbOzY31eTDf4VXSRSL60y06V3UFqCfWQqmD66EpzA13U1K5SrkgR\ne8KI4M8tOVbbHdYFHf83iQHTgsnBDDscLA27EjJsQoZGm9QUL8Im+xjI5c4g5UJMMjkvKQgw\nSXResmAekrC2DS1qjOqK6jslL2Z8V5hGN2F3bWWFkSw09wu7Q4rlWcU15UFNV8Rd1XduEam+\nGJOEVhcbYN8wk5hFY3K/SC1n7Rig2JonrpHQDfPjlbyh9O+uHhs6EDHRPmeqEVpVKtchIYfT\nFfPGl5ejRTiEBdtSpxWTlkt9NF+qXagu25Z3S4uqmaTNaL6HQmhz2oqWe7X3SvTGQnWpLTBf\nUpN6HFzJ6XilaB93QSUE65hyoQe7rNgbUzu7qRCyd+J71y2qdgeVg1jhoKR2BVnbYYaWTdu1\n5ghqvdKqNrRIDU1t6ur0RlIC5k5X5L3MjaTaU26wAampyCSqnJ0PoqIFAVFBQqqtxpkai0z4\nWDDhGsoat7ZaVIkd5rVxG3SZ6O2qS+sx/hKnetZOHt+8NwNj0Y/HZ3cEHalRVsqhWEwHRgsT\nS6pvXoSfKRSYsD89Pg1iubSxphdVqUsKSj0ilf0qOxtLj5bldDK0nKdr1XoJd1GyME3gQPE8\nw5JJFaf94uTS9Rq/wPouE9fPi8WYSWpoiTHnUtoh4M7rKbAWlldb7dq3gL3QEn57RQu+0toL\nHYvLMnuZe6qYE6m+Mya1qNWaNn5P7rfvYLHyoIE0tNaWleKnrTYukaGmuEyGWtrU4xa8rw21\nqmMc4Tyh2mB8KcrU4yKArKEcQxnIGJExzFMzMiZN335cBohqUp0GaPzmBAENM81jBDYnuBRm\nSQUq1gLJeDfcnNClJPK8tg4xUwqLapg24sBSJmfqZZOcIWdzOZw9Thg0hshLeP/NIDCeTXKI\nPY5WzRqcINF4hmxPaURRQ07tcChwIXSgTR3PBjTTZgxUywa2i60Hi41/K16xkzXKfcGeWCjI\nXjYoxNLgj1Ai1WCZpBrciCGbZkpdtTRLqmW4m+HuFG5guBFblBQSNI9i7f2UsA5oVx34SopX\nvWaPWc6ySgXxoxKzfFQG7D7PXfnEmw+9mtlhrj4HQuoe9zv5P79g63v3Xlc4+/Tc45lbje8A\nu+RxmgW7H4Ox5vzN4Ml8Yfbpr3Zkbk3jFwZnAJjS74TGNL8Bny9T8UgztMItYEBvFihHCrin\nOB3Wg6xzYPLcQMgaCJCa9FpLZLzDCmQdrgKuN4CLVCG+GleUg0yM6FfQ5oNEJx8hk3NkdI7A\nHMlsnCXiLDnnLxE+V0qEfynXCv9UnELHzMAMZ55pnOmYGZ4ZndFnffThNcJfP1AE8wdE/kAp\nFN6fVoST06enZ6Z5edq1SplWbMI/ziaFs+STwBnf3wOfVUDg008+CfzNB4GPISm8t/Z04DTh\nA39Zywf+zCcF89vC25w2ya/b7MrJV8krk9XCb/zFwsu/LhGSx4k/0ZeIJvhEclJOJvIqFGHC\nPdE40TsxMHFwYnTCaHuR9I0dGqNjvHmM7D1G6DFiPkZM5nH3+Mw4H6V7KUfpJD1F+fJR9yh3\n6Cg9yk0ePXWUK3/O/Rx38FkyeeTUEa7x8PBhrvxw7+ETh5OHdU8eWCr4D5De/eTEfrJfWSz8\nbOQKwTwijAyMDI8kR/TL98n7uOg+0jccHeb2DpPJ4VPDXOPujt29u/mHlaRwcCd56MEVQn/E\nLUTwIL3bq4XtykrhKmILXOmyBYwuPmDAo4dQ1oHPLcoKob3NJ7ThuqgiL6DH9Ogq+MA2nmTz\n1fwGfht/H6+faUrKnU2c3LRytSI3FZUoJ/2kXhEFH3pej8+oQk4rMwoXVUhhRUHASswBS4U5\ngLfEAAEiCGa3ucM8YNaZzeXmRnOvedh82pw0G92IzZj5XiCNQKKFRE8SZG+8tcXpbEgYk3jj\nMPrbKRmiRS1slpvaqGGIQqCtXY0T8tPgzj17oHZxA61oUWlocbCBdiIhMyKKhGVxvBBqg5H+\nSP+dTjZIioB+pzMSYRRhnDMl0yjijKAY1dAImf47IeKM9JNIpB8i/YhHyEakIxGIIB4haIJP\nxJn2v+AJA2xERzj1p0JEImgXQT+RdDjbRvgvNMD65gplbmRzdHJlYW0KZW5kb2JqCjE5IDAg\nb2JqCiAgIDI2NzEKZW5kb2JqCjIwIDAgb2JqCjw8IC9MZW5ndGggMjEgMCBSCiAgIC9GaWx0\nZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nF2QwWrDMAyG734KHbtDcdJdQ2B0lxzajaV9\nAMeWM8MiG8U55O2nuKGDCWyQ/v8zv6XP3XtHIYP+5Gh7zOADOcY5LmwRBhwDqfoELti8d+W2\nk0lKC9yvc8apIx9V04D+EnHOvMLhzcUBXxQA6A92yIFGONzP/WPULyn94ISUoVJtCw69PHcx\n6WomBF3gY+dED3k9CvbnuK0J4VT6+hHJRodzMhbZ0IiqqaRaaLxUq5DcP32nBm+/DRd3Le7q\n1VbFvc83bvvkM5RdmCVP2UQJskUIhM9lpZg2qpxfQ9NwlQplbmRzdHJlYW0KZW5kb2JqCjIx\nIDAgb2JqCiAgIDIyNAplbmRvYmoKMjIgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9y\nCiAgIC9Gb250TmFtZSAvVFpZQVRFK0xpYmVyYXRpb25TYW5zCiAgIC9Gb250RmFtaWx5IChM\naWJlcmF0aW9uIFNhbnMpCiAgIC9GbGFncyA0CiAgIC9Gb250QkJveCBbIC01NDMgLTMwMyAx\nMzAxIDk3OSBdCiAgIC9JdGFsaWNBbmdsZSAwCiAgIC9Bc2NlbnQgOTA1CiAgIC9EZXNjZW50\nIC0yMTEKICAgL0NhcEhlaWdodCA5NzkKICAgL1N0ZW1WIDgwCiAgIC9TdGVtSCA4MAogICAv\nRm9udEZpbGUyIDE4IDAgUgo+PgplbmRvYmoKMjMgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAg\nL1N1YnR5cGUgL0NJREZvbnRUeXBlMgogICAvQmFzZUZvbnQgL1RaWUFURStMaWJlcmF0aW9u\nU2FucwogICAvQ0lEU3lzdGVtSW5mbwogICA8PCAvUmVnaXN0cnkgKEFkb2JlKQogICAgICAv\nT3JkZXJpbmcgKElkZW50aXR5KQogICAgICAvU3VwcGxlbWVudCAwCiAgID4+CiAgIC9Gb250\nRGVzY3JpcHRvciAyMiAwIFIKICAgL1cgWzAgWyA3NTAgNjg5Ljk0MTQwNiBdXQo+PgplbmRv\nYmoKOSAwIG9iago8PCAvVHlwZSAvRm9udAogICAvU3VidHlwZSAvVHlwZTAKICAgL0Jhc2VG\nb250IC9UWllBVEUrTGliZXJhdGlvblNhbnMKICAgL0VuY29kaW5nIC9JZGVudGl0eS1ICiAg\nIC9EZXNjZW5kYW50Rm9udHMgWyAyMyAwIFJdCiAgIC9Ub1VuaWNvZGUgMjAgMCBSCj4+CmVu\nZG9iagoyNCAwIG9iago8PCAvTGVuZ3RoIDI1IDAgUgogICAvRmlsdGVyIC9GbGF0ZURlY29k\nZQogICAvTGVuZ3RoMSAyNTYwCj4+CnN0cmVhbQp4nNVUbXRUxRl+731mdpPsR+5uNoEIgcS4\nCIQQshEiX7rEUCAoAomatGADLCFQaIDw2TSC0oBEMFh0RYhIkVIM1m4pQiS0VQGtDWmrIZxS\naSkKWtpUkSLYBd/03UBPz+k57d+ezuzcO88z79czO3PJIKJ4Wk0ga9ayJek0N204kTFNBlcs\nnLNg0R3L5hFBMO2dM39lxaP18XNl3ijj9crZM0LOj4yTRCpO8LBKIVwv2KsEBwXfVrlgyYr4\n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\ncc68wuHNxQFfFADoD3bIgUY43M/9Y9QvKf3ghJShUm0LDr08dzHpaiYEXeBj50QPeT0K9ue4\nrQnhVPr6EclGh3MyFtnQiKqppFpovFSrkNw/facGb78NF3ct7urVVsW9zzdu++QzlF2YJU/Z\nRAmyRQiEz2WlmDaqnF9D03CVCmVuZHN0cmVhbQplbmRvYmoKMjcgMCBvYmoKICAgMjI0CmVu\nZG9iagoyOCAwIG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1lIC9Y\nSExYVkkrRGVqYVZ1U2FucwogICAvRm9udEZhbWlseSAoRGVqYVZ1IFNhbnMpCiAgIC9GbGFn\ncyA0CiAgIC9Gb250QkJveCBbIC0xMDIwIC00NjIgMTc5MyAxMjMyIF0KICAgL0l0YWxpY0Fu\nZ2xlIDAKICAgL0FzY2VudCA5MjgKICAgL0Rlc2NlbnQgLTIzNQogICAvQ2FwSGVpZ2h0IDEy\nMzIKICAgL1N0ZW1WIDgwCiAgIC9TdGVtSCA4MAogICAvRm9udEZpbGUyIDI0IDAgUgo+Pgpl\nbmRvYmoKMjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL0NJREZvbnRUeXBl\nMgogICAvQmFzZUZvbnQgL1hITFhWSStEZWphVnVTYW5zCiAgIC9DSURTeXN0ZW1JbmZvCiAg\nIDw8IC9SZWdpc3RyeSAoQWRvYmUpCiAgICAgIC9PcmRlcmluZyAoSWRlbnRpdHkpCiAgICAg\nIC9TdXBwbGVtZW50IDAKICAgPj4KICAgL0ZvbnREZXNjcmlwdG9yIDI4IDAgUgogICAvVyBb\nMCBbIDYwMC4wOTc2NTYgNjAyLjA1MDc4MSBdXQo+PgplbmRvYmoKOCAwIG9iago8PCAvVHlw\nZSAvRm9udAogICAvU3VidHlwZSAvVHlwZTAKICAgL0Jhc2VGb250IC9YSExYVkkrRGVqYVZ1\nU2FucwogICAvRW5jb2RpbmcgL0lkZW50aXR5LUgKICAgL0Rlc2NlbmRhbnRGb250cyBbIDI5\nIDAgUl0KICAgL1RvVW5pY29kZSAyNiAwIFIKPj4KZW5kb2JqCjEyIDAgb2JqCjw8IC9UeXBl\nIC9PYmpTdG0KICAgL0xlbmd0aCAzMiAwIFIKICAgL04gNAogICAvRmlyc3QgMjMKICAgL0Zp\nbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicVZFRa4MwFIXf8yvOy0BfNFHbdUX6UIUy\nxkDsnjb2EGKwgWEkiWP990u0doyQh/txzz3nJgyU5BQbSjKwYktyhvyRkrJE+nYdJdKG99IS\nAOmL6iw+kIGixeeMKj0NDowcDrOiMbqbhDSIBFdGgyVslxSILs6Ndp+mM+0NHy9K2ESbPo6X\nMUZyp/RQcycR1fuMZhv6xJi/GWPv8Tr/LxEevGuQNtzIECGEmsGr7BQ/6h+flPrDKN0h39J7\n4MH5foviLjgZPY0oy1CEejGZ6YrOnho+2DGYieuKn+HMJNeq8l21/FZCtqdjgD504K20ejJC\nWuR3z7MXCrdkt/4H/u1Xcce/dH9bz7/+bTvf9AvbNW48CmVuZHN0cmVhbQplbmRvYmoKMzIg\nMCBvYmoKICAgMjc1CmVuZG9iagozMyAwIG9iago8PCAvVHlwZSAvWFJlZgogICAvTGVuZ3Ro\nIDEyNwogICAvRmlsdGVyIC9GbGF0ZURlY29kZQogICAvU2l6ZSAzNAogICAvVyBbMSAyIDJd\nCiAgIC9Sb290IDMxIDAgUgogICAvSW5mbyAzMCAwIFIKPj4Kc3RyZWFtCnicY2Bg+P+fiYGH\ngQFEMDGy3mJgYGTgBxKsh0FiXECWchKQsF8KJExkgQRbLoj4CCQcXIEEOzuQUMgCEU1AQskM\nRPgCCdVnQMJgK4g4CyQM/wAJI2EgYawOMuogkLCxBxHhQMK2DUTMBRJ2ayBuYQQRzIyOIL2O\nTxgYAM9DFTsKZW5kc3RyZWFtCmVuZG9iagpzdGFydHhyZWYKMTY4NjgKJSVFT0YK",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/FDC31B76CA524D0A8311241FB4834472/t2f2wch5jh.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 840
      },
      "image/jpeg": {
       "height": 300,
       "width": 840
      },
      "image/png": {
       "height": 300,
       "width": 840
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 840
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Pi 值和对应的数据\n",
    "pi_values <- c(0.2, 0.5, 0.8)\n",
    "f_pi <- c(0.10, 0.25, 0.65)  # Prior probabilities\n",
    "L_pi_given_Y1 <- c(0.617, 0.367, 0.015)  # Likelihoods given Y=1\n",
    "posterior <- c(0.617, 0.367, 0.015)  # Posterior\n",
    "\n",
    "# 创建一个空列表来存储每个图的结果\n",
    "plots <- list()\n",
    "\n",
    "# 定义一个函数来绘制各个子图\n",
    "plot_function <- function(title, y_values) {\n",
    "  data <- data.frame(pi = pi_values, y = y_values)\n",
    "  \n",
    "  p <- ggplot(data, aes(x = pi, y = y)) +\n",
    "    geom_point(color = \"black\", size = 2) +  # 散点图\n",
    "    geom_segment(aes(xend = pi, yend = 0), color = \"black\", size = 1) +  # 垂直线\n",
    "    labs(title = title, x = expression(pi), y = \"Probability\") +  # 设置标题和标签\n",
    "    scale_y_continuous(expand = c(0, 0), limits = c(0, 0.7)) +  # 设置y轴范围\n",
    "    scale_x_continuous(expand = expansion(mult = c(0.1, 0.1))) +\n",
    "    papaja::theme_apa()\n",
    "  return(p)\n",
    "}\n",
    "\n",
    "# 绘制先验概率\n",
    "plots[[1]] <- plot_function(\"Prior f(π)\", f_pi)\n",
    "# 绘制似然函数\n",
    "plots[[2]] <- plot_function(\"Likelihood L(π|Y=1)\", L_pi_given_Y1)\n",
    "# 绘制后验概率\n",
    "plots[[3]] <- plot_function(\"Posterior f(π|Y=1)\", posterior)\n",
    "\n",
    "# 使用 gridExtra 将各个子图放在一起\n",
    "options(repr.plot.width = 14, repr.plot.height = 5)\n",
    "gridExtra::grid.arrange(grobs = plots, ncol = 3)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f4f8284e",
   "metadata": {
    "_id": "6E5372D39F5D48D58461B9A071A46D9C",
    "id": "6E17B2CAF98F4A3AA215707E5A7012A5",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**后验模型的计算过程**  \n",
    "\n",
    "上图所表示的后验可写成：  \n",
    "\n",
    "$$  \n",
    "f(\\pi|y=1)  \n",
    "$$  \n",
    "\n",
    "表示当团队只赢成功复现一项研究时，他成功率$\\pi$的概率分布  \n",
    "\n",
    "根据贝叶斯公式，我们可以进一步对后验概率公式进行展开：  \n",
    "\n",
    "$$  \n",
    "posterior = \\frac{ prior*likelihood} {normalizing\\;\\;constant}  \n",
    "$$  \n",
    "\n",
    "$$  \n",
    "f(\\pi|y=1) = \\frac{ f(\\pi)L(\\pi|y=1)} {f(y=1)} \\quad\\quad for\\;\\pi \\in {0.2,0.5,0.8}  \n",
    "$$  \n",
    "\n",
    "$$  \n",
    "f(\\pi=0.2|y=1) = \\frac{0.10 \\times 0.3932} {0.0637} \\approx 0.617  \n",
    "$$  \n",
    "$$  \n",
    "f(\\pi=0.5|y=1) = \\frac{0.25 \\times 0.0938} {0.0637} \\approx 0.368  \n",
    "$$  \n",
    "$$  \n",
    "f(\\pi=0.8|y=1) = \\frac{0.65 \\times 0.0015} {0.0637} \\approx 0.015  \n",
    "$$  \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "03a7fc22",
   "metadata": {
    "_id": "8436F519D4D24363BC40B88942193A50",
    "id": "24AFAE68517342BC99249767204523AB",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "下表对后验概率模型进行了总结，我们可知，经过了先前只成功了一项研究的复现经历后，该团队取得成功($\\pi$=0.8)的可能性已经从0.65降到了0.015  \n",
    "\n",
    "\n",
    "| $\\pi$\t        |0.2    |0.5    |0.8 |Total  \n",
    "|---------------|-----  |----   |----|-----|  \n",
    "|$f(\\pi)$   |0.10  |0.25 |0.65|1|  \n",
    "|$f(\\pi \\| y=1)$   |0.617  |0.368 |0.015|1|  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1080079a",
   "metadata": {
    "_id": "08F23756A40C45C19D184E7F115C95E0",
    "id": "BD58B96F426B43198472D9817B7D091A",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**补充材料**  \n",
    "\n",
    "省略分母的计算  \n",
    "- 在贝叶斯统计中，后验概率的计算公式是：  \n",
    "\n",
    "$$  \n",
    "P(\\pi|y) = \\frac{P(y|\\pi) \\cdot P(\\pi)}{P(y)} \\propto P(y|\\pi) \\cdot P(\\pi)  \n",
    "$$  \n",
    "\n",
    "- **$P(\\pi|y)$** 是后验概率。  \n",
    "- **$P(y|\\pi)$** 是似然函数。  \n",
    "- **$P(\\pi)$** 是先验概率。  \n",
    "- 分母 **$P(y)=\\int P(y|\\pi) \\cdot P(\\pi) d \\theta$** 是边际似然。  \n",
    "\n",
    "由于分母 **$P(y)$**（边际似然）在不同参数 **$\\pi$** 下是一个常数，因此在比较不同后验概率时，我们可以省略这个常数，因为它对所有的后验概率是相同的。  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3dbbf4fc",
   "metadata": {
    "id": "0A8D49ECF99F4324893D23F5A1111550",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "\n",
    "因此，虽然我们计算的值并不总和为 1，但它们的比例关系没有改变，仍然可以用于比较不同参数下的后验概率。这就是为什么我们可以只关注 **$P(y|\\pi) \\cdot P(\\pi)$** 而不需要计算完整的后验概率。  \n",
    "\n",
    "那么既然$f(y)$是一个用来标准化的常数，它并不受$\\pi$的影响，那么后验概率质量函数$f(\\pi|y)$ 就与$f(\\pi)$和$L(\\pi|y)$成正比  \n",
    "\n",
    "$$  \n",
    "f(\\pi | y) = \\frac{f(\\pi)L(\\pi|y)}{f(y)} \\propto f(\\pi)L(\\pi|y)  \n",
    "$$  \n",
    "即，  \n",
    "\n",
    "$$  \n",
    "posterior \\propto prior⋅ likelihood  \n",
    "$$  \n",
    "\n",
    "省略分母后验的计算可写成：  \n",
    "$$  \n",
    "f(\\pi=0.2|y=1) \\propto 0.10⋅0.3932  =0.039320  \n",
    "$$  \n",
    "\n",
    "$$  \n",
    "f(\\pi=0.5|y=1) \\propto 0.25⋅0.0938 = 0.023450  \n",
    "$$  \n",
    "$$  \n",
    "f(\\pi=0.8|y=1) \\propto 0.65⋅0.0015 = 0.000975  \n",
    "$$  \n",
    "\n",
    "$\\propto$ 表示成比例，尽管这些未经标准化的后验概率总和不等于1  \n",
    "$$  \n",
    "0.039320 + 0.023450 + 0.000975 = 0.063745,  \n",
    "$$  \n",
    "但它们的比例关系并未改变(见下图)  "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2356cffb",
   "metadata": {
    "id": "394EC557BA334427972F7253125D8866",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "**Proportionality**  \n",
    "\n",
    "既然$f(y)$是一个用来标准化的常数，它并不受$\\pi$的影响，那么后验概率质量函数$f(\\pi|y)$ 就与$f(\\pi)$和$L(\\pi|y)$成正比  \n",
    "\n",
    "$$  \n",
    "f(\\pi | y) = \\frac{f(\\pi)L(\\pi|y)}{f(y)} \\propto f(\\pi)L(\\pi|y)  \n",
    "$$  \n",
    "即，  \n",
    "\n",
    "$$  \n",
    "posterior \\propto prior⋅ likelihood  \n",
    "$$  \n",
    "\n",
    "> 😜这个性质很重要。因为分母的计算量往往比较大，需要遍历所有参数，如果参数不止一个，计算量可想而知。因此，如过能不计算分母也能计算后验，那么这样的方法(后面会介绍的MCMC算法)将会非常有实践意义。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "44628501",
   "metadata": {
    "_id": "E2DC4ED06D5D468495F62290EAE2A323",
    "collapsed": false,
    "id": "42729D32EBF846C3B4BCE3B2F66D06FC",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nL1XUYscNwx+n1/hx92HdSRLtmwofTgohUJL027pQ8hD\nepcLCXcJuRZK++sre2yPd3Y2od1Qjh1G33yWZUmf7UMD+ndAfVAAc/s4fZzQ5L+nN+bZKzBv\nfp8yQ9xMeHpt7s+BecRP3xq0GChJMH8q9p3+3k0vXhqwYO4mBPO9WQ39eXpuPk4+2IjBEFkJ\nzhCwTZyME28pYab9at6fRfXZQffFdwTDwbBxgSx617xBiUQjrt7IOoBEXgOHzcCjs47UlY3i\nzWM1CVJx+lAX4kBMtlmfctV0Tj27RNmbFWKdsSHrOUm/EuQ5r5uRKFjyOZPOhphnXJDTGWfX\np/1RpgIrEEPAi9WP3kr0QxZn26MNKEaiDdo6p1bl3nbbWSSZuqtirhzfmpslyB6dQ2cjxzGl\nHRHLIppidUNb9jzitiGTQRabkltcrO0+ZCsUomS1ScdUV0AndrmpdXSSDXsecNuQybikE7Nv\nHlbmMuCmlI61lCD8L6X2+VGz1phcFpu/WmxMbDnGpVEasG5F71MRnL9acD6g9SxDdzRkPWeI\n8kUEF6J2NKShCxbkSwmOKVpgGhM5A1VkTGCTrnZldh1VYGo66/5W5qd054O3CP4ksw2Zdeb9\nLJ5zu4moIovuuou1/UndhaRxBx5T3pFZaUF3EvB+w25CqsiivOZibY/aAw0Okxbq/EXjuzlO\nqBXXdWCq53E3MYBu+y4F1RtaF8RLNMfH6dn9AQ6gMj3eTy92P+wPsvuwP6DsnvYOd4+vyvvD\nHmn3do+8+3t/UPi1omF3t3951GYRK8KkgYI53qmPX7KP92Xc/PxQ2OoPBn+89ifV3zfHpS+H\na0Du/XZU17bW7U6lJSGcNLou07SfuqgHLGpZiTYPXAxBezMOnI4MLJdbO2+IndWRgdWPus7a\nOvzAUive+qVWUQWZUtQ+nKvYTWHtSmAtIrloY/TC7ryKuvT9QUMjfeO5SF5bKIhgKxLY0Cnx\nLO99o+6ZFmQLq8StMt331r72rd3Wl5Yc89iRgRWAbIIxjx0ZWW2fW1gbO99/z7YK16YYXcT/\nO92rk/K6ZZAEiw4hqT+9ViQXBXFrGQAlNDDKl0BOWvCAlz64Sx/o0gfuy1+1jxYYUtxKwlDM\nxnJ6crDeHRZWQ0YW6s1C9CaxsBpywsrfmEZWRUaWui+HTuPMdqnMckKt9qfT/y2uq6JLNmoi\ncy9eLGLO7/74TiMSPUiJIeS0lwZdUAmxorzJDRk9r4/XzuWNtY3aLhTnOLfbQmnAQkG9VeqF\nY6E0YKF4LudlZ1R7yXdNl6t50p0hoqYF8wWCOFnvkNXPnCE84JyhrwAAvy7LzmMOZbzubZFS\nZI0dNCtegDb08eOTHmROdr+Vpx5kLtb3t+X9YXj/Y6+Pv1qnP5/+AbJKDC4KZW5kc3RyZWFt\nCmVuZG9iago1IDAgb2JqCiAgIDEwNTAKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4dEdTdGF0\nZSA8PAogICAgICAvYTAgPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQgPDwKICAg\nICAgL2YtMC0wIDcgMCBSCiAgICAgIC9mLTEtMSA4IDAgUgogICA+Pgo+PgplbmRvYmoKOSAw\nIG9iago8PCAvVHlwZSAvT2JqU3RtCiAgIC9MZW5ndGggMTAgMCBSCiAgIC9OIDEKICAgL0Zp\ncnN0IDQKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicM1Mw4IrmiuUCAAY4\nAV0KZW5kc3RyZWFtCmVuZG9iagoxMCAwIG9iagogICAxNgplbmRvYmoKMTIgMCBvYmoKPDwg\nL0xlbmd0aCAxMyAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgOTQ4\nNAo+PgpzdHJlYW0KeJzlOn18U1WyZ+5HPpo2N0mT9tIUctPblo8AhYYCRSRXaGOxKimlmBSh\nLRSo+EEwRcEPKAJSAkjRiosgdBU/QJRbqFJ01eLX4gpP3i7qW1GpivtcFyyiri6lyZt7k4bC\nqvve773/3qXn3nNm5syZMzNnZk5+ECCEJJEGQhNhzq01wRO7HztCSOpXhFCVc+6oF675qPQ8\nIWlFOG6cF5x/67KaF82E8EijbZt/y9J5P805kIUc9uCc8XVza2oNZF0rIUIDwkbXISClmd6M\n43YcZ9fdWr9kAWfQ4vhjHNfesnBODSHfLiHEKeG47taaJUG6kT6F42dwLARvnxvsef7qyTg+\nTAg9iVDkKCFsPrsCpdUSh5RCaVhaQ+t1LM0gyHM076jZAoWFZrfZPXJEqtPsTDU7zUeZud1b\n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\nnPR2eakGL6Tl2yrMwFWY8rkKrG4rgIDDwXm4Km45x3BcHjeFW8ht5E5yUU7rQVgXRy8kMIVA\nQxqw0A5NrdPKXa7Sdm0UKyWtb4YMjXJOufKWyiplTaNMKipn+FsBHgis3rCBTOxfKueX++Xq\n/oFSuRY7ktJpwI6pf2samRgI1YfqF7uUB2IdUu9yhUJKD5SRK4ZTe+AKIRrJcBIO6heTkCtU\nD6FQPQnVIzwEs7AfCpEQwkOAU7CFXHH+CU64wCxkhK/62BKhEM4LIZ9QfDl+FvkvqP6vmApl\nbmRzdHJlYW0KZW5kb2JqCjEzIDAgb2JqCiAgIDYwMzQKZW5kb2JqCjE0IDAgb2JqCjw8IC9M\nZW5ndGggMTUgMCBSCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nF2STW+D\nMAyG7/kVPnaHio8AXaUIaeouHPahsf2ANDEd0ghRoAf+/eK46qQdwE/exC/GTnbqnjs3rpC9\nh9n0uMIwOhtwma/BIJzxMjpRlGBHs95W6W0m7UUWk/ttWXHq3DALpSD7iJvLGjbYPdn5jA8C\nALK3YDGM7gK7r1PPUn/1/gcndCvkom3B4hDtXrR/1RNClpL3nY3747rtY9rfic/NI5RpXXBJ\nZra4eG0waHdBofK8BTUMrUBn/+2VFaecB/Otg1AVxqN5HoNQzZA4BqEOZeIYom5Zt8QFc0Fs\nmA3xkflIuZpzNek16zVxxVxFrlmvk841NFSDzBPHIFTJepl0rkdSPZJ9JPnIhrkhfmR+JOY6\nJdUpJbOk77J/Tf4NezbkeWDPA3ke+F9ioAbeOkWtpJnfZ2SuIcTxpIuR5kITGR3e746fPWWl\n5xfpKabjCmVuZHN0cmVhbQplbmRvYmoKMTUgMCBvYmoKICAgMzM3CmVuZG9iagoxNiAwIG9i\nago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1lIC9HQVpaTUQrTGliZXJh\ndGlvblNhbnMKICAgL0ZvbnRGYW1pbHkgKExpYmVyYXRpb24gU2FucykKICAgL0ZsYWdzIDMy\nCiAgIC9Gb250QkJveCBbIC01NDMgLTMwMyAxMzAxIDk3OSBdCiAgIC9JdGFsaWNBbmdsZSAw\nCiAgIC9Bc2NlbnQgOTA1CiAgIC9EZXNjZW50IC0yMTEKICAgL0NhcEhlaWdodCA5NzkKICAg\nL1N0ZW1WIDgwCiAgIC9TdGVtSCA4MAogICAvRm9udEZpbGUyIDEyIDAgUgo+PgplbmRvYmoK\nNyAwIG9iago8PCAvVHlwZSAvRm9udAogICAvU3VidHlwZSAvVHJ1ZVR5cGUKICAgL0Jhc2VG\nb250IC9HQVpaTUQrTGliZXJhdGlvblNhbnMKICAgL0ZpcnN0Q2hhciAzMgogICAvTGFzdENo\nYXIgMTIyCiAgIC9Gb250RGVzY3JpcHRvciAxNiAwIFIKICAgL0VuY29kaW5nIC9XaW5BbnNp\nRW5jb2RpbmcKICAgL1dpZHRocyBbIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAyNzcu\nODMyMDMxIDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1\nNTYuMTUyMzQ0IDAgNTU2LjE1MjM0NCAwIDU1Ni4xNTIzNDQgMCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNzIyLjE2Nzk2OSAwIDY2Ni45OTIxODggMCAwIDAg\nMCA3MjIuMTY3OTY5IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA1NTYuMTUyMzQ0IDU1Ni4xNTIz\nNDQgMCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgMCAwIDAgMjIyLjE2Nzk2OSAwIDAgMjIyLjE2\nNzk2OSA4MzMuMDA3ODEyIDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCAwIDAgMzMzLjAwNzgxMiAw\nIDI3Ny44MzIwMzEgMCAwIDAgMCA1MDAgNTAwIF0KICAgIC9Ub1VuaWNvZGUgMTQgMCBSCj4+\nCmVuZG9iagoxNyAwIG9iago8PCAvTGVuZ3RoIDE4IDAgUgogICAvRmlsdGVyIC9GbGF0ZURl\nY29kZQogICAvTGVuZ3RoMSAyNTYwCj4+CnN0cmVhbQp4nNVUbXRUxRl+731mdpPsR+5uNoEI\ngcS4CIQQshEiX7rEUCAoAomatGADLCFQaIDw2TSC0oBEMFh0RYhIkVIM1m4pQiS0VQGtDWmr\nIZxSaSkKWtpUkSLYBd/03UBPz+k57d+ezuzcO88z79czO3PJIKJ4Wk0ga9ayJek0N204kTFN\nBlcsnLNg0R3L5hFBMO2dM39lxaP18XNl3ijj9crZM0LOj4yTRCpO8LBKIVwv2KsEBwXfVrlg\n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\ngP4Scc68wuHNxQFfFADoD3bIgUY43M/9Y9QvKf3ghJShUm0LDr08dzHpaiYEXeBj50QPeT0K\n9ue4rQnhVPr6EclGh3MyFtnQiKqppFpovFSrkNw/facGb78NF3ct7urVVsW9zzdu++QzlF2Y\nJU/ZRAmyRQiEz2WlmDaqnF9D03CVCmVuZHN0cmVhbQplbmRvYmoKMjAgMCBvYmoKICAgMjI0\nCmVuZG9iagoyMSAwIG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IKICAgL0ZvbnROYW1l\nIC9YSExYVkkrRGVqYVZ1U2FucwogICAvRm9udEZhbWlseSAoRGVqYVZ1IFNhbnMpCiAgIC9G\nbGFncyA0CiAgIC9Gb250QkJveCBbIC0xMDIwIC00NjIgMTc5MyAxMjMyIF0KICAgL0l0YWxp\nY0FuZ2xlIDAKICAgL0FzY2VudCA5MjgKICAgL0Rlc2NlbnQgLTIzNQogICAvQ2FwSGVpZ2h0\nIDEyMzIKICAgL1N0ZW1WIDgwCiAgIC9TdGVtSCA4MAogICAvRm9udEZpbGUyIDE3IDAgUgo+\nPgplbmRvYmoKMjIgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL0NJREZvbnRU\neXBlMgogICAvQmFzZUZvbnQgL1hITFhWSStEZWphVnVTYW5zCiAgIC9DSURTeXN0ZW1JbmZv\nCiAgIDw8IC9SZWdpc3RyeSAoQWRvYmUpCiAgICAgIC9PcmRlcmluZyAoSWRlbnRpdHkpCiAg\nICAgIC9TdXBwbGVtZW50IDAKICAgPj4KICAgL0ZvbnREZXNjcmlwdG9yIDIxIDAgUgogICAv\nVyBbMCBbIDYwMC4wOTc2NTYgNjAyLjA1MDc4MSBdXQo+PgplbmRvYmoKOCAwIG9iago8PCAv\nVHlwZSAvRm9udAogICAvU3VidHlwZSAvVHlwZTAKICAgL0Jhc2VGb250IC9YSExYVkkrRGVq\nYVZ1U2FucwogICAvRW5jb2RpbmcgL0lkZW50aXR5LUgKICAgL0Rlc2NlbmRhbnRGb250cyBb\nIDIyIDAgUl0KICAgL1RvVW5pY29kZSAxOSAwIFIKPj4KZW5kb2JqCjExIDAgb2JqCjw8IC9U\neXBlIC9PYmpTdG0KICAgL0xlbmd0aCAyNSAwIFIKICAgL04gNAogICAvRmlyc3QgMjMKICAg\nL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicVZFBa4QwEIXv/oq5FPSiSXS33UX2\nsApLKQVxe2rpIcTBDRQjSSzdf9+JrltKSGA+ZvLeSziwSOSwoRN4sY1EAfl2F5UlZG/XESFr\nZI8uAoDsRXcOPkAAgxY+Z1SZafDAo8Nhnmis6SaFFmIltTXAU/6UFhBfvB/dPstm2ls5XrRy\nqbF9kizXWJRem6GWHiGu94KJDdtxTltw/p6s9/85ggdSDaONtBgsBFMzeMVOy6P5IaeM1qNg\nFIjd/Q6e2h0U9/6TNdMIZRmKUC8aM13RmaiVgxuDlrqu+Bm8nXCtKuqq8VsrbE/HAMlz4C06\nM1mFDvK75pkGlV+sO/qAf/Eq6eWX6W/p6PFv4ajpF45lbhgKZW5kc3RyZWFtCmVuZG9iagoy\nNSAwIG9iagogICAyNzQKZW5kb2JqCjI2IDAgb2JqCjw8IC9UeXBlIC9YUmVmCiAgIC9MZW5n\ndGggMTAzCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCiAgIC9TaXplIDI3CiAgIC9XIFsxIDIg\nMl0KICAgL1Jvb3QgMjQgMCBSCiAgIC9JbmZvIDIzIDAgUgo+PgpzdHJlYW0KeJxjYGD4/5+J\ngZuBAUQwMbL0MjAwMvADCZYykBgnkKVQAyR0dwEJVl4QMQFI6EWBWMuAhOwMELEBSMgHgIh0\nIKF0DUhohYCIHCChPRtEbAISOgchFjGCCGZG/YdAMf0fDAwAA+8QGgplbmRzdHJlYW0KZW5k\nb2JqCnN0YXJ0eHJlZgoxMjI4MAolJUVPRgo=",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/42729D32EBF846C3B4BCE3B2F66D06FC/t2f2wcepps.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 600
      },
      "image/jpeg": {
       "height": 300,
       "width": 600
      },
      "image/png": {
       "height": 300,
       "width": 600
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 600
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Pi values and corresponding unnormalized posterior data\n",
    "pi_values <- c(0.2, 0.5, 0.8)\n",
    "unnormalized_posterior <- c(0.03932, 0.02345, 0.00097)  # Unnormalized posterior values\n",
    "normalized_posterior <- unnormalized_posterior / sum(unnormalized_posterior)  # Normalized\n",
    "\n",
    "# 创建数据框\n",
    "posterior_data <- data.frame(\n",
    "    pi = rep(pi_values, 2),\n",
    "    probability = c(normalized_posterior, unnormalized_posterior),\n",
    "    type = rep(c(\"normalized\", \"unnormalized\"), each = length(pi_values))\n",
    ")\n",
    "\n",
    "# 创建子图\n",
    "options(repr.plot.width=10, repr.plot.height=5) # 自定义画布大小  \n",
    "ggplot2::ggplot(posterior_data, aes(x = pi, y = probability)) +\n",
    "    geom_segment(aes(xend = pi, yend = 0), \n",
    "                 color = \"black\", size = 1.5) +  # 绘制竖线\n",
    "    geom_point(color = \"black\", size = 3) +  # 绘制散点\n",
    "    facet_wrap(~type, scales = \"free_y\",\n",
    "               labeller = labeller(type = c(normalized = \"Normalized\", unnormalized = \"Unnormalized\"), \n",
    "                                  size=20)) +  # 创建子图\n",
    "    labs(x = expression(pi), y = \"Probability\") +  # 设置坐标轴标签\n",
    "    scale_y_continuous(expand = expansion(mult = c(0, 0.05))) +\n",
    "    scale_x_continuous(expand = expansion(mult = c(0.1, 0.1)))+\n",
    "    papaja::theme_apa() +\n",
    "    theme(strip.text = element_text(size = 16))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "846723cd",
   "metadata": {
    "_id": "039AEF64DD0447A8AB7E4DD44248D1EF",
    "id": "6D14B246327B4E069EDB9EBD605EC5D3",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "我们可以使用这些未经标准化的后验概率总和作为分母，来对后验概率进行标准化，会得到相同的计算结果。  \n",
    "\n",
    "$$  \n",
    "f(\\pi = 0.2 | y = 1) = \\frac{0.039320}{0.039320 + 0.023450 + 0.000975} \\approx 0.617  \n",
    "$$  \n",
    "\n",
    "注意，分母为所有似然值的总和，因此后验概率的计算公式还可以写成：  \n",
    "\n",
    "$$  \n",
    "f(\\pi | y) = \\frac{f(\\pi)L(\\pi|y)}{f(y)} = \\frac{f(\\pi)L(\\pi|y)}{\\sum_{\\text{all } \\pi} f(\\pi)L(\\pi|y)} .  \n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ed2abcf5",
   "metadata": {
    "_id": "F4A3D160AE5E4181A769E34E023A7033",
    "id": "D00E969E48C841878BE16A518909568E",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### Posterior simulation (with code)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2b8ca947",
   "metadata": {
    "_id": "744BDB3097544121BB3C1C271A5EEEE0",
    "id": "F55853E2E6AA4830BD00FB78505A2F68",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 1. 定义先验模型  \n",
    "- 定义多个可能的成功率  \n",
    "- 定义每个成功率出现的可能性 (注意，其和为1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "b05422b4",
   "metadata": {
    "_id": "AE14DA7DBF2E4C4AAC85A3A7A09A81B6",
    "collapsed": false,
    "id": "E007CDD75C2C43F1847B10EEE5619528",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "# 定义可能的成功率\n",
    "replicated <- data.frame(pi = c(0.2, 0.5, 0.8))\n",
    "\n",
    "# 定义先验模型\n",
    "prior <- c(0.10, 0.25, 0.65)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "89278b53",
   "metadata": {
    "_id": "A5593998CBBE463084B2DB31E612BAEB",
    "id": "E69F7EFB6BA243799F4C23AB6F7326C7",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 2. 模拟在特定成功率下，6项研究中的成功次数  \n",
    "- 重复这个过程10000次"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "716b92e5",
   "metadata": {
    "_id": "EB13D3BBC8AA444EB4751606BAE3948F",
    "collapsed": false,
    "id": "103D8AD1F74E47B496F8AFF0A8401413",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  pi y\n",
      " 0.5 3\n",
      " 0.5 3\n",
      " 0.8 4\n",
      " 0.2 1\n",
      " 0.5 3\n",
      " 0.8 3\n",
      " 0.8 6\n",
      " 0.8 4\n",
      " 0.5 3\n",
      " 0.8 4\n"
     ]
    }
   ],
   "source": [
    "# 设置随机数种子保证可重复性\n",
    "set.seed(84735)\n",
    "\n",
    "# 从先验中抽取10000个\n",
    "replicated_sim_indices <- sample(1:nrow(replicated), size = 10000, replace = TRUE, prob = prior)\n",
    "replicated_sim <- replicated[replicated_sim_indices, , drop = FALSE]\n",
    "replicated_sim$y <- rbinom(n = nrow(replicated_sim), size = 6, prob = replicated_sim$pi)\n",
    "\n",
    "# 显示前10行数据\n",
    "print(head(replicated_sim, 10),row.names = FALSE)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "a1dff71b",
   "metadata": {
    "_id": "178104DAE86849BE8666A37AA8AB472E",
    "collapsed": false,
    "id": "548BE619DC124E2A9A48D74C837600CA",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[90m# A tibble: 3 × 3\u001b[39m\n",
      "     pi     n percentage\n",
      "  \u001b[3m\u001b[90m<dbl>\u001b[39m\u001b[23m \u001b[3m\u001b[90m<int>\u001b[39m\u001b[23m      \u001b[3m\u001b[90m<dbl>\u001b[39m\u001b[23m\n",
      "\u001b[90m1\u001b[39m   0.2  \u001b[4m1\u001b[24m017      0.102\n",
      "\u001b[90m2\u001b[39m   0.5  \u001b[4m2\u001b[24m521      0.252\n",
      "\u001b[90m3\u001b[39m   0.8  \u001b[4m6\u001b[24m462      0.646\n"
     ]
    }
   ],
   "source": [
    "# 对 pi 的抽取情况进行总结\n",
    "replicated_counts <- replicated_sim %>%\n",
    "  dplyr::group_by(pi) %>%\n",
    "  dplyr::summarise(n = n(), .groups = 'drop') %>%\n",
    "  dplyr::mutate(percentage = n / sum(n)) %>%\n",
    "  dplyr::arrange(pi)\n",
    "\n",
    "# 打印统计结果\n",
    "print(replicated_counts)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "850b6926",
   "metadata": {
    "_id": "AD3A5819F20D461597DD4193AF4D8A37",
    "id": "2B244A16A8024E679A2D3E77B114E966",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 3.  不同成功率下，不同成功次数的分布情况$f(y|\\pi)$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "bcf4e90e",
   "metadata": {
    "_id": "0F1BFF8B7EB74713A32B5E4C20A98CFA",
    "collapsed": false,
    "id": "0275EC3A2DC34B97A7B6BD92B7040861",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nN1Yy67bNhDd+yu4tBdmyOFrCKRZBC0KFCjQNAa6uMgi\nbXqDBrkJctOiyN/38CGKkt2ostK7CAzL8mg4Zx7k8IhaKHyOGhfjlfjtbvdhp0X63L8Wj14q\n8frjLmlopThr3P8ubrPEGD8KnokPc+Ev4l219PP3gyUttTcxePE3Hv2A75vdzQuhpBKvdlqJ\nH8XMxvNs2HnJGjKSgZ2gYCQpg18njQ9TqNHpxUHF6RiEdcIoQd5I7Wgwp6SjaDXBOVaBrcFN\nJO187DBikDYYGJAcgRElYGCIJDnuIHyGoDOIHG2fHOV9DIzkKCRHnSVnCa5kS1MU2mphkA8f\nVsfUvFp0B0AyIjiAyQgb1SHtvdRsE+jT4pBH6C6kJDu92h+MhppJFvA7gDglvTFjjrXX0Ejl\nFo42JXkJryY5FyCmmOL6kKKTyoZkAN40DPyJXUTR4gHnMqptEX0ergRElAqUi7S+Rhgsc4Hx\no+wAgJTZbhkUBJ8C2lahBbTnrRmpy51HXew8Q79QnJ27E9MG8hZ2lTRKR8y08xvk4ukJhmSI\nkZWrTbX9hY/sDXFalVgsxEFrcbrbPbo9qiMyLk63uz2cOZzewD2sH03eszi9SlI9Sg1aWBHS\nJaG5ON4m6XcnuJ+qWL5IDKY0Vul5vFWQAi4qZFEvE0aVQTCq6JAwO5VB0KkgGwrzeVSpglHF\nWqm4c6X+z6kfynlWJmNgBuu193sWaYjScZp4Fm4bjBkE3RANsLTCR6Um6bRIRelT1ppWk/Ra\nwcrQmxoEExevnUvIrGMXDVoDFgKzC5bmc+lmrw5HZ33Y0+HFCdOd0AE8YbNTaVLc7G197PPj\nNDkyTIWmiknoHZg/pDlgA0PzJusV+tJ85n4q8y4NOObBiJxNZIuyo+lYn8Zj0M3+p/v3hyOF\n/a/5+hJXrvd/5Pu33f2fB1w+Ff+xcUa0nVgda381kKp/2mFhucC6IH17OBqXLPn9R9wqmDuS\n298fcAupAyz5/V8HyMqTLHyfhO/SRUDod0VwmxVEvn6CMV3vizyrZLsiO5tTo2shHj+BymOl\nlH7SnrUiHbjA7L/BlapRlczJfEtDdRq5SdzoAvU6E19Fvs6slFZqIl3Bv5ZHFdctVggRpY2H\n/eqdB6MzJ4IFCY26F7CTgUyPgV2PdGIHHDbtPUt4JWPWO5G7BPTs/8jAgJMZGNu0vTRGSEg1\nx5GAWXTZ60kuRmdCtMBybWXS22nuImB9K0jMiGxmLLw+yxieWZFOFcJeObBXNjIW9npbYWA/\n7S9AQ523BLYMObzvIFyTl0RYvyQwOtEjGJCxzQmsOupXRIPQc4jVQX0erkaESUoxT0G9fgZi\ntFSZDsNsCC1vaDDo+2NMebLkZafttpiWAK/kmK0njuxl2iW3MQODdrCCZgYZFXJtpzRzJqVO\n6hBaRzTPKaVBB59wynnAKb6qlDpoMLZTGiSdElimNHg0Kg2STgm8JPWJUacKJrzxPPUe76kL\nxNGCU0yZY5N0gyyrGXVskp5Lo51NqWOTdFo+VbM3NQi+CHXEQntA7ujIX8MdTXoZeBDyaJ36\nismjOyOPPtAl8ngmvoo8nlkpPTIQX0Eel0cV14OP5UxBzc4U/su2gsGZy8FAt3Xp6UYZsE9n\nBNp4arGAVrLFCpQx5jMSvT4gjM50EBakdSOGlj52J0sFxGWQbUxtEbBGhaZOLvMZt57PYHQ9\nkCO0ucYHHfa6/niJ03uEyxzfbeP4i4A1KkxE7VTmNI7Xh+VDIYNoQj0ZhPMT/sk+nbDGXC0X\ntwW2CFkji3HD+wJGJ0K48LowYOjNrwtLeCWmiHmhTT6w1X79kS2GZ0YIE9hMx5nuWRrXra2Y\nF1Wplt9WrWXIK1loa66NCs3a7cbzKTSFVYedClOc/PywE9LIPD/tnEjNRQv/ctwZwC4n3HSe\nhhR1VUoHnFZzpzRIOqV0xOl7nSroVZAVTK1ep0o6JUxcUqHTqYIJfT2vmVaKFg8+QbtmJ5+D\npBsEuzP+2iS9FusZf22STitaP+Wvg+DLHH1afkD+yughV/BXn95KHoS/BvZfMX/loTzPdv8A\n0vpLMwplbmRzdHJlYW0KZW5kb2JqCjUgMCBvYmoKICAgMTU1MAplbmRvYmoKMyAwIG9iago8\nPAogICAvRXh0R1N0YXRlIDw8CiAgICAgIC9hMCA8PCAvQ0EgMSAvY2EgMSA+PgogICA+Pgog\nICAvRm9udCA8PAogICAgICAvZi0wLTAgNyAwIFIKICAgICAgL2YtMC0xIDggMCBSCiAgID4+\nCj4+CmVuZG9iago5IDAgb2JqCjw8IC9UeXBlIC9PYmpTdG0KICAgL0xlbmd0aCAxMCAwIFIK\n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\nffU+tCo+ktgj6s5k8f6O3OJIFb9fjqqoZAplbmRzdHJlYW0KZW5kb2JqCjE1IDAgb2JqCiAg\nIDM0MQplbmRvYmoKMTYgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yCiAgIC9Gb250\nTmFtZSAvWFNaQ0JIK0xpYmVyYXRpb25TYW5zCiAgIC9Gb250RmFtaWx5IChMaWJlcmF0aW9u\nIFNhbnMpCiAgIC9GbGFncyAzMgogICAvRm9udEJCb3ggWyAtNTQzIC0zMDMgMTMwMSA5Nzkg\nXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAvRGVzY2VudCAtMjExCiAg\nIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0ZvbnRGaWxl\nMiAxMiAwIFIKPj4KZW5kb2JqCjcgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUg\nL1RydWVUeXBlCiAgIC9CYXNlRm9udCAvWFNaQ0JIK0xpYmVyYXRpb25TYW5zCiAgIC9GaXJz\ndENoYXIgMzIKICAgL0xhc3RDaGFyIDEyMQogICAvRm9udERlc2NyaXB0b3IgMTYgMCBSCiAg\nIC9FbmNvZGluZyAvV2luQW5zaUVuY29kaW5nCiAgIC9XaWR0aHMgWyAyNzcuODMyMDMxIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc3LjgzMjAzMSAwIDU1Ni4xNTIzNDQgNTU2LjE1\nMjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4x\nNTIzNDQgMCA1NTYuMTUyMzQ0IDAgMCAwIDAgNTgzLjk4NDM3NSAwIDAgMCAwIDAgMCA3MjIu\nMTY3OTY5IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA2NjYuOTkyMTg4IDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDAgMCAwIDI3Ny44MzIw\nMzEgMCAwIDIyMi4xNjc5NjkgMCAwIDIyMi4xNjc5NjkgMCA1NTYuMTUyMzQ0IDU1Ni4xNTIz\nNDQgMCAwIDMzMy4wMDc4MTIgNTAwIDI3Ny44MzIwMzEgNTU2LjE1MjM0NCAwIDAgMCA1MDAg\n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\n9r/gCQNsREc49adCRCJoF0E/kXQ420b4LzTA+uYKZW5kc3RyZWFtCmVuZG9iagoxOCAwIG9i\nagogICAyNjcxCmVuZG9iagoxOSAwIG9iago8PCAvTGVuZ3RoIDIwIDAgUgogICAvRmlsdGVy\nIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxdkMFqwzAMhu9+Ch27Q3HSXUNgdJcc2o2lfQDH\nljPDIhvFOeTtp7ihgwlskP7/M7+lz917RyGD/uRoe8zgAznGOS5sEQYcA6n6BC7YvHfltpNJ\nSgvcr3PGqSMfVdOA/hJxzrzC4c3FAV8UAOgPdsiBRjjcz/1j1C8p/eCElKFSbQsOvTx3Melq\nJgRd4GPnRA95PQr257itCeFU+voRyUaHczIW2dCIqqmkWmi8VKuQ3D99pwZvvw0Xdy3u6tVW\nxb3PN2775DOUXZglT9lECbJFCITPZaWYNqqcX0PTcJUKZW5kc3RyZWFtCmVuZG9iagoyMCAw\nIG9iagogICAyMjQKZW5kb2JqCjIxIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvcgog\nICAvRm9udE5hbWUgL1RaWUFURStMaWJlcmF0aW9uU2FucwogICAvRm9udEZhbWlseSAoTGli\nZXJhdGlvbiBTYW5zKQogICAvRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtNTQzIC0zMDMgMTMw\nMSA5NzkgXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAvRGVzY2VudCAt\nMjExCiAgIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0Zv\nbnRGaWxlMiAxNyAwIFIKPj4KZW5kb2JqCjIyIDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9T\ndWJ0eXBlIC9DSURGb250VHlwZTIKICAgL0Jhc2VGb250IC9UWllBVEUrTGliZXJhdGlvblNh\nbnMKICAgL0NJRFN5c3RlbUluZm8KICAgPDwgL1JlZ2lzdHJ5IChBZG9iZSkKICAgICAgL09y\nZGVyaW5nIChJZGVudGl0eSkKICAgICAgL1N1cHBsZW1lbnQgMAogICA+PgogICAvRm9udERl\nc2NyaXB0b3IgMjEgMCBSCiAgIC9XIFswIFsgNzUwIDY4OS45NDE0MDYgXV0KPj4KZW5kb2Jq\nCjggMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAgIC9CYXNlRm9u\ndCAvVFpZQVRFK0xpYmVyYXRpb25TYW5zCiAgIC9FbmNvZGluZyAvSWRlbnRpdHktSAogICAv\nRGVzY2VuZGFudEZvbnRzIFsgMjIgMCBSXQogICAvVG9Vbmljb2RlIDE5IDAgUgo+PgplbmRv\nYmoKMTEgMCBvYmoKPDwgL1R5cGUgL09ialN0bQogICAvTGVuZ3RoIDI1IDAgUgogICAvTiA0\nCiAgIC9GaXJzdCAyMwogICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxVkc1q\nhDAUhfc+xdkUdKNJdH6RWYzCUEpBnK5auggxOEIxksTSefsmOlpKIHA/7rnn3ISCBCzFxt2g\n2TZgGdIdCfIcydt9kEgq3koTAEheusbgAwwENT4nVKixt6DB6TQpKq2aUUiNUPBOK9CY7uMM\n4c3awRyTZKKt5sOtEyZWuo2ieYyW3HaqL7mVCMsjI2xDDpRSlh3I7j1a5v8lwpNz9dKKa+kj\n+FATeJVNx8/qxyUl7lBC9ki3ZA3cW9dvkK2Ci1bjgDz3ha9nk4ku6Oqo5r0ZvJm4L/gZVo9y\nqQrXVcrvTsj6cvbQhfa8lkaNWkiDdPW8OqGwc3bjfuDffgW3/Eu1j/Xc6z+2c02/6ypuSQpl\nbmRzdHJlYW0KZW5kb2JqCjI1IDAgb2JqCiAgIDI3NAplbmRvYmoKMjYgMCBvYmoKPDwgL1R5\ncGUgL1hSZWYKICAgL0xlbmd0aCAxMDIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL1Np\nemUgMjcKICAgL1cgWzEgMiAyXQogICAvUm9vdCAyNCAwIFIKICAgL0luZm8gMjMgMCBSCj4+\nCnN0cmVhbQp4nGNgYPj/n4mBm4EBRDAxsjUyMDAy8AMJtiyQGCeQpTgXSBiZAgl2RhDRAuLe\nBLFmAQm5rSDiLJBQKAQRHUBC+R+Q0AOJ6T0FEgYiIEIbSBjaQyxiBBHMjCYJQDGTcgYGABYH\nDzcKZW5kc3RyZWFtCmVuZG9iagpzdGFydHhyZWYKMTM0MzEKJSVFT0YK",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/0275EC3A2DC34B97A7B6BD92B7040861/t2fcxx4298.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 300,
       "width": 840
      },
      "image/jpeg": {
       "height": 300,
       "width": 840
      },
      "image/png": {
       "height": 300,
       "width": 840
      },
      "image/svg+xml": {
       "height": 300,
       "isolated": true,
       "width": 840
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 创建三个分图\n",
    "plot_list <- lapply(c(0.2, 0.5, 0.8), function(pi_value) {\n",
    "  ggplot2::ggplot(replicated_sim[replicated_sim$pi == pi_value, ], aes(x = y, stat = \"count\")) +\n",
    "    geom_bar(aes(y = ..count.. / sum(..count..)), \n",
    "                   binwidth = 1, \n",
    "                   fill = \"skyblue\", color = \"black\") +  \n",
    "    labs(title = paste(\"Distribution of y for π =\", pi_value),\n",
    "         y = \"Probability\",\n",
    "         x = \"y\") +\n",
    "    scale_y_continuous(expand = expansion(mult = c(0, 0.05))) +\n",
    "    scale_x_continuous(expand = expansion(mult = c(0.1, 0.1)),limits = c(0,7))+\n",
    "    papaja::theme_apa()\n",
    "})\n",
    "\n",
    "# 使用 gridExtra 将各个子图放在一起\n",
    "options(repr.plot.width=14, repr.plot.height=5) #自定义画布大小  \n",
    "grid.arrange(grobs = plot_list, ncol = 3)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "12cd72f5",
   "metadata": {
    "_id": "A9FFE801A1A24AEC97683A82E1DED0CF",
    "id": "07FFE148C1B04B7F8A372A5A987E2959",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 4. 查看$y=1$时，对应的$\\pi$的分布情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "aa92aba5",
   "metadata": {
    "_id": "B07F0C7DA92949F8B37A353DD13C21AC",
    "collapsed": false,
    "id": "66F46F4E360D4116BA5E3623F8BC8121",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[90m# A tibble: 3 × 2\u001b[39m\n",
      "     pi     n\n",
      "  \u001b[3m\u001b[90m<dbl>\u001b[39m\u001b[23m \u001b[3m\u001b[90m<int>\u001b[39m\u001b[23m\n",
      "\u001b[90m1\u001b[39m   0.2   404\n",
      "\u001b[90m2\u001b[39m   0.5   253\n",
      "\u001b[90m3\u001b[39m   0.8    12\n"
     ]
    }
   ],
   "source": [
    "# 过滤出 y = 1 的情况\n",
    "replicated_post <- replicated_sim %>% filter(y == 1)\n",
    "# 对 pi 的抽取情况进行总结\n",
    "y_1_counts <- replicated_post %>%\n",
    "  group_by(pi) %>%\n",
    "  summarise(n = n(), .groups = 'drop') %>%\n",
    "  arrange(pi)\n",
    "\n",
    "# 打印统计结果\n",
    "print(y_1_counts)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "8c2c51b6",
   "metadata": {
    "_id": "E05EE4EBAB694DA3998A35F52F1512D9",
    "collapsed": false,
    "id": "EB448263499A4E0880084E4B4EA82514",
    "jupyter": {
     "outputs_hidden": false
    },
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [
    {
     "data": {
      "application/pdf": "JVBERi0xLjcKJbXtrvsKNCAwIG9iago8PCAvTGVuZ3RoIDUgMCBSCiAgIC9GaWx0ZXIgL0Zs\nYXRlRGVjb2RlCj4+CnN0cmVhbQp4nJ1UTW/TQBC9+1fM0T54OrPfK5UeEAipEodCJA5RD9A2\nhYq2aguq+Pe8Xduxk4CKiOWV/fzmzduZ2SgJrl6xOGvo4rZ5aJTK9XhNR5+Frp+awvAxVMLj\nFW0OgSHiwztS1mAzPj0DO8V906zPSVjoslGh97QX+rE5o4fGZ07RkzUckyevwuoSWZfYhlho\nn+juwNWLQZuqnSy5TEAsmOrNJFeMCHvnJadBVYtqsizBIIRtVAqBjXcIVSTRWdTgRaOlkMhI\n+gdZBHAyrgRBOE/CRiJH6GyFXRKqiSOVDb2oCz77ZEoMmxwnXZTG+1m1Bpf2jKVbdEn+2KWp\ntnBdPNzSbrG/o2/CVjQHDM7BA+y9XkGIY85J/Dhh21ennI0O+g6PKarS6rY52vTSC3q82jSt\ndKubpkd6/KxS5CA2O0Ory2bdqkh3vjqF+YI7K27AzV9wu4PPOm7E366wHUPTjUJ5ywmFPizA\nCJQKjByTMwssbjkTsORo4CxhwRmBBUetq0O25UzAguMNh4XK8Fq7MXX4sHMRfTV2x/neZhVm\nNCsokdVaBM3IHGQVzcJRmlkzsiiKWo4SF6wZWRr43+FRHLeQ1aF26B6n5GPp5v70sCnzo4md\n2GQdNNBwwP7PcCpwmYKabrRgxtw4XarsHIY2kzPK3uCfxo1Jtdch6bGI6Al0hpi+xqNCyebk\ncNQNihVKb/bMrtuL+643sf1Z1zusqf3RYXmqw4nyaa65BzvbV2Pt5Eo9zpEvwwLxdfum661v\nv3V9gEZvBXK98e1jh0egvv3SmYB8wIYvFbwv4F1ZCGBoBmBTCVStVNvjdtfHJ/gwbHr7bbul\nLlUR3z4jf2i/FqWrXf32V7U20F5hNeOzTmfyrPkNrBpb0QplbmRzdHJlYW0KZW5kb2JqCjUg\nMCBvYmoKICAgNjYyCmVuZG9iagozIDAgb2JqCjw8CiAgIC9FeHRHU3RhdGUgPDwKICAgICAg\nL2EwIDw8IC9DQSAxIC9jYSAxID4+CiAgICAgIC9hMSA8PCAvQ0EgMC42OTgwMzkgL2NhIDAu\nNjk4MDM5ID4+CiAgID4+CiAgIC9Gb250IDw8CiAgICAgIC9mLTAtMCA3IDAgUgogICAgICAv\nZi0xLTEgOCAwIFIKICAgICAgL2YtMC0xIDkgMCBSCiAgID4+Cj4+CmVuZG9iagoxMCAwIG9i\nago8PCAvVHlwZSAvT2JqU3RtCiAgIC9MZW5ndGggMTEgMCBSCiAgIC9OIDEKICAgL0ZpcnN0\nIDQKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKPj4Kc3RyZWFtCnicM1Mw4IrmiuUCAAY4AV0K\nZW5kc3RyZWFtCmVuZG9iagoxMSAwIG9iagogICAxNgplbmRvYmoKMTMgMCBvYmoKPDwgL0xl\nbmd0aCAxNCAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL0xlbmd0aDEgOTI3Mgo+\nPgpzdHJlYW0KeJzdOml4FFW291RVVy9ZqtfqIh3o7lQSIgkE0wQIRrqEpA1EpVki3WBIBwIE\nXAh0UMGRhE1DAIMaUYQRnuICw1KBCIEZNLiiwhjHZeYNOkRcnjPCBBm3EdL9TlV3QmCU731v\n3q936Vt17znnnnvu2e6pKAFCiIHUE5q4Zt1ZWXNyxVNJhFgSCaGmzbq71jX+z6U/EWKrxnnD\nnJq5dy6rPGAixH6OEG3r3DuWzLmBebkBOewixByqnl1ZlUDWthDi3I6w4dUISGqmH8f5xzhP\nr76z9t55c/WHCXHhlFTfsWBWJSEf4l4u5E/uuLPy3hp6Df05zj/Auatm0eya7j03jsPht4TQ\nYwlFThCiydMsR2m1xCklUayGZmm9TkMzCPKeyD1hMkNBgclj8lw71OI2uS0mt+kEM/vC5pvo\nE5rlP9Vp8i/Ymb8qu1PEHz3DiJqNJIHYSZZkNbOJhCVCPz0XDuq1tC0cpPsRbzYRvNl9mIKR\nEtMok9HszjPTPWNPnpkR//mPf3x7Fsg/zx5c//RzDz+6bWszdTSyNbIOFsEsuB3mRx6JbIJr\nwRw5H3kn8kHkb5BKgGwhhOHwPAaSLVkZHUUlJGoYhmZZHRCoDRIBJTARj+D1eHI9ihgmDwrh\nyXebNPkZHpPbtgXmRl6Bm5+DqZuYws92fnFB2ESQ71zkm4hnG0BGS65UkszpbP1tHGGcLl1q\nstmcEA6atUBSSWrPHmZSIKhbmQtwG7t6WpO61WhN/rBMMY3VDhwNnjzeZk0GLf7ctrmeR5/e\nWj+hYUn4saQ26w+vfPhFafN74YYB1Km6xfsf/tWvGm6trb9/oWnHsbcOTXr66Z0zHvehaCjb\nLaj3fihbFpklFWhZR6otDV0gLcOYyrLXDMowGU3G2qBJsKy4GR9wM2cCo8Zkoh1OpxAOOrW0\nPhzUKqbxxGyjiCzkVswoz85Wj9FHfNVgVlZMyxw4gnfnDceDZEO+Rx30PRGrtQ0Apt+PX34U\nFQ6nA9ewueX5OTObn1m98p5HE1/Eo33w9eMbnpJh9asfHT1i+umBVeHlW5YvWrhy6YLk3a+8\nLj+4YwBj2qf6VC7qfYRqTzMZLqWYNGaK0oEGLFbCmJhwUGcyQQLLAurci3LnehT54+7VI7BJ\nNLnzAcc2QD0DB2564c7uamr1kTciG6hhSZHHhxvhPHgjR8G7jj5w8aaH6HvYGZbuM+Otqn5/\ni49l5CQGhF0y0CiQhsDm6YTkZsccSDGqx/bbV0+eJCr9JLRHf5Q5lcyQ8s0WwW61EouWFZQk\nwFtYpv+AFAyJlBTaarXXBq2sYoC5WuC1ENau1FIxW5SXl8dDBR1J3anXCOYC9aGYgsRMcckC\nosVtc9PD0QpM/8gPX79+3nWg4MzD259dN26ZV86l3d0rHYv3dPwA75yKkl3P2N7bu2n19iEj\nqO83RW6Y9i2eMIiyp6Av9SPpqPsyaUg260xKsWRgCuP1SSw79Fpen5aVlrU4yKWBhU1Lo43G\n1MVBo5YevLhvfJO4Cymjn/eg/GHDR+QPAXxdchl6mDuNtVmV81jU89iM6GVMyo9fnY4+dV94\n9TfvdHzzQO2DG/8S+alu9Zr761aLW9aveRKueXQDrHn1zx+93vg7K+NoXfIfx157fkmrneEP\nUUld996zpG5x98WVq5vuj3yyXrHP1OgZ+m3mFjzjHKmYJFktrFZrSaJTHEa7P+i01lmbrKes\njNVqNLrYGrae7WA7WQ1hjWxInbYjQKvHlGIw0P6ggXc6oDyeVZQjL/R6csuzL4t5UE80wp4M\nPemNt2uH4IQFS8Oa0HLugK1z12dd5zqfO5l6KHnRvKZ6Ku1PHdV3JG45DE6wgAmcux5Pnjb/\npVievVXxL5TfQHhSIuWY2ATMs3ZBl+wP6oy01R+k+W0CbBCgXoAaAUIC+AUYKsApAcoXxtov\n52ElDcdUrwrN9P/p72fPwxc//u3I6l8/tX7tY0+vpQZEPsds6wYTNTTSFfm08513P/7ojx0x\n31+Nuv2aGUVSSIV0nVmnS4B+Cf1SHWYNr/EHeT7JpidcRyq0p4KcCufUZzQVOlOhF7gtFWpS\noTzWFi5ctGgR8eZ5vX3iuiesrQNAcXycWu3iEGqgqOg3M98EowbdFlyxsZXdCRRN0aOfWbLv\nWWZU96Tb7x627ykqfHH3kUGanIIJNeUtx6n3UGa8b+m/oz5TSKVUaNbrDSTFkOJINfNEFdqY\nxBmI7X8pdCx/XpLabRqmGt6GSWnYQM8Ayu6J5UwTXfCvUlN7VJm719OTL8ncnYsyO6PnKIQQ\nKymW0pOs1gSO0zMMb0vW6FDmBE4PibRe0nGU2R+k+HpedVE0ecoJdNHeJKnmyDxFrgwMyXyT\nmO8Z4bF5bKJJMf4IalCw/E/3r8q/99gxjze9SCd8R/1h5fnzK7vLbvEmx+xdgPY+wJSSQaRK\nKtSyabZUB5Y7DhvLZOckpdGC4PQHUwUjbfDjHcMbc4DkwLkc6MyB9hwI5UB9DnhzAOGq3hTN\nxe8hz1VSx8ARMcsPy8yFIVQsg8QDyoZOYR9A0wf+q+Ptk+6t9g31a+oCM5dvXjn+/bf3v5/6\nNLfyrqW1Q2c83rRsXBZkb3pu9Xrn1IlTpkj+lLSsm+/yN29ettZacvP40iGFgzLSrx9fqcTb\nC1gjzcZ8ricWkiPZOY2BaIjVxiZXBFlaw1UENWaXrUfBl8WUlWJELJpchDaSa8CEucysmb0z\ncux49zfwB5gDq9sjn0bORb6BUZu/Xka9++fIoT2a5ZFNkRcBM8OFlgZQ430NKvp6zXG1RrtL\nKqG1WsIwOr2GY2xAJgeBRPXQqYdTemjXg6yHrXqo10ONHpx6IHo41we1TQ8b9DBBRfXkgkW9\nLXYCb69nYMmHFxuNh1nT2tqqce3a9VMnM+rCG7GYoRowZixElIysxUJIotXGsQYjwxEb3sVY\nX/VRhEfxdd6murrdpmYX00PsTh2TXTMnPSO9sOZuevSixraMtXMMzxqOtnYfV8+9Sr1Hj2M1\nKZJyacQATXJykkCSSHqGxkTZbA5/0GZMIgYb5VZ8XM4AbwZsyICaDHBmQDQDOjOgPSPuWL2H\n8/b6VU9QqsnPjV4l4iUkxvKJVhX1ikwYWXTfMx5KR+1hWxkm79mlJ44euffBJ9Y2bGpYQqV1\nvx2c5awzDN/BnI0EbwhUT4uciZz+7LWO0x++8xbqqz8eqFDzNuqmSapOsqB9KcrG2Bg7b+Dw\nEsEMxOJlYmE5sDntufYJ9gp7nb3JvtWu5exeHO61v2w/Ze+ya6+rwBEVw9Ecku5V4Rq7dGtV\niV0amFPisg+1h+y0ZEcLZ2eXL1yEd5JSHcXqXtU/89QaQon9WHmEca9GUcw2/QErpXmtTzyx\n4oHSYYPF4tHv0wcvjqMPrlzavCJxjc53W+VKJfaj3RgXxzHXW2GPFAVi0rKJXDJt0SfSJtqq\n01rx2tPpIEFno5MttI6DRBOttd3NwxwepvDg42E4D+k88DwwPHzLw5c8vMbDPh6287CRhwd6\nKItUSisPLA/zvufhNA8f8PAGDwdUulU81KqkfTmyPRwPqOyaVXbzeLi1hx0SfM7DR+qWSPMc\nD2t4WMQDhNQ901WhRn6rbvWayqNe3aeUh6EqGuW5oKK2KeyloXAfD1Uq92E8OHg4p27wDg+t\n6varVKyXB8rIA+FBN6O8vKK898b4l1icocArrsT3peilKr+SDfHaPfgzgWdGuclTbjLbC5Qs\n74n98BIS6YHJQIvgsfD2ERaPRXkwG987kq7PPNQReW/fQW266fTRI0OcJ2Sqe8fgHd1D8f50\nC3vG09O7+720lk5Rc/9Dyr2J8SmQkHSdzWQy67Rmbb8UzAW0WWujk7AQMXakQHsKyClwTn1G\nU6AzBXqB21KgJuWKa1NN/uYC7+WXffySFPtcnximrBauH/XM/fLzLw4KldVtam3VAr18/qy9\nv+/OpfYsWjBMfqx7heZ4ZNn1KwyYT7DuYwTMWWas/O6RfBYTq+2HeStRi99CKSxLsHz1B5P6\ngZXphx+tHO8PckY9RqWe73BAuwO2OWCDA+odUOOAkAP8DhjqgIWXlP4zpa+Q+y8XWKwUpNyx\nStBlsg1UT6QF65PNi9f3e6oy8sK5Cxf+Cp8c5jY8uHITCz8cfntGyeAogQGQAokwoPuo0Pib\nX++NfftpIlPpixiD6GxS1KLjTGaDXk9zZkaw6yycxW7ScwQLAuJ4RIAVAtQKUCXAJAHGCDBM\ngHQBzAJQAnwrwOcC/EGAVwRoFWC7AH3pb+1Dz6v0c2MLPuqzYONVF/SlB1kALFCbBVjVU6BO\nEaBIrVFdAlgFYAQ4J0CnAB8I8JrwP6If0SlI0+L0vcS9lL1kvTz70lD+Hl5EgPae0hmBuQIY\nVaB2Rp8Qq/iZULw8EC8P2diCRYuuFrqXrYgHQewL9pL/KPdx2sB8dCAvYOhi7YhhC8nUy+Pz\nMoe8MNMUmdz+uSb5Jtp39qVIaGzt+sjUhAfZH7KZ/O6dyQP/kvQ61XLhjd07Jqt3axUEmBvp\nM2pN4ZWytHSspGB2BzmNUzNBU6F5V6Mx0BqQgOwO+qEDKA4ASK7yWZoiGH8f83CUTSkS3DbA\nXkV/drE//RkdaG6OkOZmEqsQaaJUMYmEoW7B9wBiREgyqSNRmAyVcC8sg0eoN6iPXZmuoa5R\nrl3utGhU+VsV2QaTIIT4++N4C+ILevG/3AD3+BiehC3wFP7bFv/3Bv47BscQb7nKWlZdT6GE\nDJZ4WhWm68X2u4yWu6oUV29mrCUJ1jXK3xd41EhPS8RvOqWZUENJJAFHNuzCv7HT/9umOY43\nz/1YldvIEvV5WVOqEnIPIdEzyuzSMzL1/1aKuHO0kiNkL9l2GaqBLCPq33H7tJfJq+Q36mgz\nWX8VtofIzviomWwiD/4i3XyyEvlsx/0vtRBCl5AncOc28jy6cxp4cNfb49iT5K2fZwWfwlvk\nEfzWuR2fB/G5GdPEfdR58gg1idxF/ZFeTlbgl8g2shXmkSakD5HtMJ3MQGiszSCzyYIrmDaS\nDeRZspTUXwJplkf/QZIu7kfJ1yCfjWQeWYiW5C4OiJ4nw5gvSVLkA/Iy7UTZ95AX1SXLe9Zq\nS+j51AGK6n4UJw+Tudgr4T9RzvX0DVfR5r/d2OVMNbEy7yg+FH0/Uoeyn0QLHUZtvCvdOH1a\nMFA2ZfKkif4Jt9x8U+n4cSU3+oqLxo65QfKOvr7wulEFI0cMz792aO6QwTlZAzMz0sU0t1Ow\nmoxcclKCQa/TshqGpvC72CVDqFimM1wmX6VYLFaWDM5xFQvVRYNzikVfSHZVumR8MZliSYkK\nEitlV8glZ+Krsg84JEtIOecKSilGKfVSgtFVSAqVLUSXfKJIdLXBtIkBHK8vEoMu+aw6vlkd\nM5nqJAknbjeuUKVSpHUVy767qxuLQygjtCQYxopjZxsG55AWQwIOE3AkZ4k1LZA1GtQBlVU8\nqoUiuiRlWzxpcWWV7J8YKC5yuN3BwTnj5GSxSEWRsSpLmR0ra1WWrnmK6GStqyWnvXFdm5HM\nDGUnVolVlbcFZLoS1zbSxY2ND8qmbPkasUi+ZunnAp58tpwjFhXL2QrX0km9+5Re2hJkTYZR\ndDV+R/A44tkzl0Mq4xA2w/gdUYYyNVaGSQG30hw+1HVjo090+RpDjZVt0fqZossoNrYkJjbW\nFKO6iT+ALNqih9c6ZN+6oGwMVcOoYPzovkmlsmXi9IBMZfhc1ZUIwZ9XdI90uE29NP5fQhNU\nCyoHNex2K2pY2yaRmTiR6ycGYnMXmenYR6Tc7KBMhRRMew/GVqZg6nswvctDItq2dHKgUWYy\nxlWJxajxtZVy/Uz0rvmKYUSjnPy9wy02mk2ugtygSutCqcZVzXPJmkxUEq7quwD9RlnSaFQn\nyd/HXmcduEGmyewqEJGNwqdYLA7Ff3dXC8jAhYouyY45wpSALBXhQKqMW6y4ZWgurqgMocHm\nFanGlHPFGtkqjum1riJW8bzJAXVJfJlsHSuT0Kz4Kjm3WI0rV3FjqCgmgsJLnBg4RDzRzpZh\nLsd+DxlGgkUKMT8WvSyzuDFQNUd2hhxVGHdzXAGHW5aCaOGgGJgdVNwONXRNp0N1jqDqK1MC\npZPF0onTAiPjgsQQCjsmo/gKNmLAEWODDijrMnSuAOWgg0hoRIDLhwNxTCE+ZW2GDrsRFa5C\nFccdU+gKgIP0UKMY8jWu4tlFcTplfhlTjeJOY0t6uLHKFPmMLXG4g+5YG5xDIdoV3xhX6BSl\nlvSgME0hQof+ObZEBSm6FBSndwXE2WJQrHbJkj+gnE1Rj6rluDJUncdtNeWyWR9loZqIG9E9\nE0WZsi/b0Ve58o3qvHdacgV6XA/a1agTSyc3KszFOEOCko+TieLC0kiTQ80FSkCLmHtdRgxp\nNaAbWyRJCebqUQoTcVxVozg5UKhSYz6537FU2ctMSqF0ypjBOZjaxrSI0DCxRYKGydMCh7Cw\nczVMCeyjgBobGhNsSUdc4JCLEEmFUgpUASoTlzJROE3CiU6ldxySCKlXsYwKUOez2oCoMF0P\nDMisNioGM8Y2ylQ3krCSndXGxDBSDzWDMF0MVq/C1NZCFJVJBo2kk/RSIpVEOVpAAe1DyGGs\n4PVA9idCEjhacNUkFdwG9S16yRGjqEcKKSZhQ9mlrcumBfYnElymPnGjMUpDdxGq0dh4rRS7\nqhRH+VWwujEUVIKN8Gga/IEM4mg0kzgaBWETZYM4e4ycII5R4F4F7o3BWQWuRRcFHnB5Pdre\nL4PiAdMDbgxJV8pbjkbjWcVSQUwqjcYvBqtfJFS/TW/WphdWcIXfEWesjjsm/fNJ5f3JfUP4\nC891P2qYr/0jUYo8Sl2hfBsQ7ejILWSsofXCcz8tNcyPwy+1FPyEOMGEiR/7Fuxzsd+CPZcq\nIL/F9yTsQYaQqfi+Fftq7A2IcyKsQPMmeQHeJGuonaQB4asQTrD317wZ7cb5Q9inIp2G2UWq\n4vvdhL0DBcvC/hpSbyOETsc+BWtgdD/mWyTH6pD1o+S4VNuGx0Eb6ZFGv50Qw0jsWwhJqI71\nxEJCkpWOtTLXjh8iPyr/H4J6yhSYRKaQ2/AbicIvllwcEWo7xaA/wQ1uNL6XABSQMhgdf48B\nCWtwJ9yAbye+ryMeGIXwkfhGPJFAq/x3DPW5FRhpJ7R3w95uIN1gmHABXBfgO3+W87wvy/mN\nb5DznC/bWdFV10VxXRO6KrqauvZ2aRK++HyA87PTPid3GqTTPt75aafP+W7nqc6uTlrq9Az3\ndfoE59/PRp1n4auyMyVfl/0tj5T99auvyv6rhJR9SaLOT64/VXYK6LK/XE+XfUxHndyHzg8p\n9SG9LTh8774CR9oLnUf9mc7fvZTljB4Cf1tNW30b3RZtl6Jt5jyf86D34ISDCw7WHdx6cO9B\nrXAAavZt2yfvo7l9sOFFkF8E7kXQcfu9+7v20/XyBpmS5Xa5Q6Zz93r3Utt2y7up9t0du6nc\nXd5d1NbfQPvOjp3UhB1NO6jcHQt2vLwjuoPZsjnd6d8MCzbCyxtho6+/87Fmu5NrdjbXNTc1\nR5s1Qx+WHqbqH4aapvomakMTtDd1NFET1lWsW7COfsAXdW5dDatWXuusDXudYTzIgrsKnXf5\n8p0pIJT18whlWg9dxuLRQ4irwH6b71rn9Gklzmn4tuSZyzSoHiaPLruDhkS6kL6JvoP+Fa3p\nmhiVqiZS0sT8kT5pYkaW710/jPO5nCXI+Ubse31wytflo+p9wOfZykzAlRnzuDKscsuAgNPJ\nebkKro5jOC6Xm8At4Jq4U1yU03oR1sXRCwhMIMqfWzXQBhtapkzOzi5t00axYtL6p8vQIGdM\nVp7SxGky2yCTsmnTAy0ADwVXr19PxvQvlfMmB+RQ/2CpXIUDSRnU48DYv4UnY4Lh2nDt4myl\nQWxAarOzw2FlBMosO4ZTR5AdRjSS4SKc1C4m4exwLYTDtSRci/AwzMBxOEzCCA8DLsEezo7z\n7+WEG8xARviojW0RDuO6MPIJx7cTZpD/Buayc78KZW5kc3RyZWFtCmVuZG9iagoxNCAwIG9i\nagogICA2MDE0CmVuZG9iagoxNSAwIG9iago8PCAvTGVuZ3RoIDE2IDAgUgogICAvRmlsdGVy\nIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxdkk1ugzAQhfc+xSzTRQQYYjcSQqrSDYv+qLQH\nIPaQIhVjGbLg9vV4olTqAvg8fm/07CE7tc+tG1fI3sNsOlxhGJ0NuMzXYBDOeBmdKCTY0ay3\nVXqbqfcii+ZuW1acWjfMoq4h+4ibyxo22D3Z+YwPAgCyt2AxjO4Cu69Tx6Xu6v0PTuhWyEXT\ngMUhtnvp/Ws/IWTJvG9t3B/XbR9tf4rPzSPItC44kpktLr43GHp3QVHneQP1MDQCnf23Jw9s\nOQ/muw+iLkma5/ETuWAuiCWzJC6ZS+KKuYosMXH8xPqB6wfiR+bHyIq9irxqYI7Bas16TXrF\nfRT10dxfU3/NXk3eiusV1dWR9UfScE5NORWzIpZ8LknnUorrivSa9ZrqnFOlnJxHUR7N/TX1\nLy2fxabLvN0aXSvN/z4vcw0hjir9JGlGNJ3R4f0/8rMnV3p+AWMWqCgKZW5kc3RyZWFtCmVu\nZG9iagoxNiAwIG9iagogICAzNDEKZW5kb2JqCjE3IDAgb2JqCjw8IC9UeXBlIC9Gb250RGVz\nY3JpcHRvcgogICAvRm9udE5hbWUgL1hYSk1KTitMaWJlcmF0aW9uU2FucwogICAvRm9udEZh\nbWlseSAoTGliZXJhdGlvbiBTYW5zKQogICAvRmxhZ3MgMzIKICAgL0ZvbnRCQm94IFsgLTU0\nMyAtMzAzIDEzMDEgOTc5IF0KICAgL0l0YWxpY0FuZ2xlIDAKICAgL0FzY2VudCA5MDUKICAg\nL0Rlc2NlbnQgLTIxMQogICAvQ2FwSGVpZ2h0IDk3OQogICAvU3RlbVYgODAKICAgL1N0ZW1I\nIDgwCiAgIC9Gb250RmlsZTIgMTMgMCBSCj4+CmVuZG9iago3IDAgb2JqCjw8IC9UeXBlIC9G\nb250CiAgIC9TdWJ0eXBlIC9UcnVlVHlwZQogICAvQmFzZUZvbnQgL1hYSk1KTitMaWJlcmF0\naW9uU2FucwogICAvRmlyc3RDaGFyIDMyCiAgIC9MYXN0Q2hhciAxMjEKICAgL0ZvbnREZXNj\ncmlwdG9yIDE3IDAgUgogICAvRW5jb2RpbmcgL1dpbkFuc2lFbmNvZGluZwogICAvV2lkdGhz\nIFsgMjc3LjgzMjAzMSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDI3Ny44MzIwMzEgMCA1\nNTYuMTUyMzQ0IDU1Ni4xNTIzNDQgNTU2LjE1MjM0NCA1NTYuMTUyMzQ0IDU1Ni4xNTIzNDQg\nNTU2LjE1MjM0NCAwIDAgNTU2LjE1MjM0NCAwIDAgMCAwIDU4My45ODQzNzUgMCAwIDAgMCAw\nIDAgNzIyLjE2Nzk2OSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg\nMCAwIDAgMCAwIDAgMCAwIDAgNTU2LjE1MjM0NCA1MDAgMCA1NTYuMTUyMzQ0IDI3Ny44MzIw\nMzEgMCA1NTYuMTUyMzQ0IDIyMi4xNjc5NjkgMCAwIDAgMCA1NTYuMTUyMzQ0IDU1Ni4xNTIz\nNDQgMCAwIDMzMy4wMDc4MTIgNTAwIDI3Ny44MzIwMzEgNTU2LjE1MjM0NCAwIDcyMi4xNjc5\nNjkgMCA1MDAgXQogICAgL1RvVW5pY29kZSAxNSAwIFIKPj4KZW5kb2JqCjE4IDAgb2JqCjw8\nIC9MZW5ndGggMTkgMCBSCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCiAgIC9MZW5ndGgxIDQw\nMDQKPj4Kc3RyZWFtCnicrVZrcBvVFT53Vy8/JTm2EYiwq2zsOsjGieWExDjWxrI2Mg5Yfqhd\n2TSWEts4IcSmMhTCw3IhYJSkTsDNlIaZ5AelJBB8ZROsMNC49E+hmGSmMExLaQwFCjSpWzph\nKMZRz13JzmMKf8od7b3nfOd17zlnVxcIAGRAFHiwbL6rX7zxTw1fAZARAG6ou+/W2x8Iv2gF\n0F0NYHzh1m33dD8TH5hFiyfx+bKnK9yZBbviAFmnkF/Vg0DOCD8AkG1CfmnP7f13Z+0kaJtd\nirxpW+/mMPquQ74S+ezbw3f38XfwHyIpIy/2/airb+759fXIhwB4D3AwBaCv0A/i7owgyDmc\nQc8b+AyTntch5J4qn7LmkTVrrC6ra8XyRQ6rY5HVYZ3Sdc0e2MBP6Qe/GtCvnL1C9yk6BwKN\nyTN6p64KBLhRLsnIzLTqc6/kFxcW8rm86DA7yh1cBm/T5xbk+oMF5swCuNofhEJwO8Hmdjut\n4HKRjo0/tOZdoYWzulxaUP2S4pVWR0E+Z5RW5a0lSwzGlTXE5SiQrPmFrusLDLruSPf57ZXX\nvVxZVXvoKtttlbqiz66t/P5N+Xc8zL3l++i889ib5OTr/kLzrmzrg3MtG7ymwXz9G/o34H48\ndQHco82XDDxBPvwYIHmGcRfm8z+A73SYUssL8AqMwqFLREPwAM7PXYKdgN/Csxp1APZ8i9vj\n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\neejBFUJ/xC1E8CC926uF7cpK4SpiC1zpsgWMLj5gwKOHUNaBzy3KCqG9zSe04bqoIi+gx/To\nKvjANp5k89X8Bn4bfx+vn2lKyp1NnNy0crUiNxWVKCf9pF4RBR96Xo/PqEJOKzMKF1VIYUVB\nwErMAUuFOYC3xAABIghmt7nDPGDWmc3l5kZzr3nYfNqcNBvdiM2Y+V4gjUCihURPEmRvvLXF\n6WxIGJN44zD62ykZokUtbJab2qhhiEKgrV2NE/LT4M49e6B2cQOtaFFpaHGwgXYiITMiioRl\ncbwQaoOR/kj/nU42SIqAfqczEmEUYZwzJdMo4oygGNXQCJn+OyHijPSTSKQfIv2IR8hGpCMR\niCAeIWiCT8SZ9r/gCQNsREc49adCRCJoF0E/kXQ420b4LzTA+uYKZW5kc3RyZWFtCmVuZG9i\nagoxOSAwIG9iagogICAyNjcxCmVuZG9iagoyMCAwIG9iago8PCAvTGVuZ3RoIDIxIDAgUgog\nICAvRmlsdGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJxdkMFqwzAMhu9+Ch27Q3HSXUNg\ndJcc2o2lfQDHljPDIhvFOeTtp7ihgwlskP7/M7+lz917RyGD/uRoe8zgAznGOS5sEQYcA6n6\nBC7YvHfltpNJSgvcr3PGqSMfVdOA/hJxzrzC4c3FAV8UAOgPdsiBRjjcz/1j1C8p/eCElKFS\nbQsOvTx3MelqJgRd4GPnRA95PQr257itCeFU+voRyUaHczIW2dCIqqmkWmi8VKuQ3D99pwZv\nvw0Xdy3u6tVWxb3PN2775DOUXZglT9lECbJFCITPZaWYNqqcX0PTcJUKZW5kc3RyZWFtCmVu\nZG9iagoyMSAwIG9iagogICAyMjQKZW5kb2JqCjIyIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVz\nY3JpcHRvcgogICAvRm9udE5hbWUgL1RaWUFURStMaWJlcmF0aW9uU2FucwogICAvRm9udEZh\nbWlseSAoTGliZXJhdGlvbiBTYW5zKQogICAvRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtNTQz\nIC0zMDMgMTMwMSA5NzkgXQogICAvSXRhbGljQW5nbGUgMAogICAvQXNjZW50IDkwNQogICAv\nRGVzY2VudCAtMjExCiAgIC9DYXBIZWlnaHQgOTc5CiAgIC9TdGVtViA4MAogICAvU3RlbUgg\nODAKICAgL0ZvbnRGaWxlMiAxOCAwIFIKPj4KZW5kb2JqCjIzIDAgb2JqCjw8IC9UeXBlIC9G\nb250CiAgIC9TdWJ0eXBlIC9DSURGb250VHlwZTIKICAgL0Jhc2VGb250IC9UWllBVEUrTGli\nZXJhdGlvblNhbnMKICAgL0NJRFN5c3RlbUluZm8KICAgPDwgL1JlZ2lzdHJ5IChBZG9iZSkK\nICAgICAgL09yZGVyaW5nIChJZGVudGl0eSkKICAgICAgL1N1cHBsZW1lbnQgMAogICA+Pgog\nICAvRm9udERlc2NyaXB0b3IgMjIgMCBSCiAgIC9XIFswIFsgNzUwIDY4OS45NDE0MDYgXV0K\nPj4KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAg\nIC9CYXNlRm9udCAvVFpZQVRFK0xpYmVyYXRpb25TYW5zCiAgIC9FbmNvZGluZyAvSWRlbnRp\ndHktSAogICAvRGVzY2VuZGFudEZvbnRzIFsgMjMgMCBSXQogICAvVG9Vbmljb2RlIDIwIDAg\nUgo+PgplbmRvYmoKMjQgMCBvYmoKPDwgL0xlbmd0aCAyNSAwIFIKICAgL0ZpbHRlciAvRmxh\ndGVEZWNvZGUKICAgL0xlbmd0aDEgMjU2MAo+PgpzdHJlYW0KeJzVVG10VMUZfu99ZnaT7Efu\nbjaBCIHEuAiEELIRIl+6xFAgKAKJmrRgAywhUGiA8Nk0gtKARDBYdEWISJFSDNZuKUIktFUB\nrQ1pqyGcUmkpClraVJEi2AXf9N1AT8/pOe3fns7s3DvPM+/XMztzySCieFpNIGvWsiXpNDdt\nOJExTQZXLJyzYNEdy+YRQTDtnTN/ZcWj9fFzZd4o4/XK2TNCzo+Mk0QqTvCwSiFcL9irBAcF\n31a5YMmK+O0UERwSHDe/atYMiasEzxfsXDBjxUJVZVskeIXg9IWLZy8caf9MpmoLka4kkyo4\nrCr0LqnOTrcEneoa2a4ZcXqVqSjn6InOXLJOdJ7oHJLkyfD4MzwZFYquV6PX9fMctru/uLTY\nNoAMKuo6pbaocupBOUFHaoLhjUNSHKX0tE4fFd+jR4/nBp32de4NyUjqsY4OJ1PO5c5AwLos\nYTOSMz2+lLzAsPxkt5F5a7+hkifTk1mkcjfm5icOsmcW+VdM41mHG1R585eTx9+tjTqXc03E\nbLxeij1kDKVmapX+BjVRo7FbUIWIWyTMDnMf1dFSYY4YrcZ6M1u43XSR2sVyHbWiSZFRRHnC\nEp3SJl02Smi/xBhu+IzhdpsiNUntV1NVs/pYtVG+qlZtqlxVG3nYqR/Uu2UMxzHTS+9QX2o2\nzlA1HcIF5OGwKlRuOoM2NNF5ySL/heRooF1UI7X4jCpaZdaYU4V5W7fRVulVst5mbDfapbpD\nxhrqoC1Q5njabnSIrla6QmtQYq6SM5JnVkj9b0usNvHfStWKdIeRQGxmCbe/+8zM7H6mIVt3\ndPeLtEoyl9AuW7PNZ8+ULLEd220cMTptm2kHtWMaFuF9o05lqj1qPDXc2AGUU4PE3hrzsVUY\nK0V7rNfEopvLVbnRRBdUuX2mxD4WUyQ595tTRVEFHZax3GaJppFGHdZLpbHVNGqzF6kc8ZcI\n9lpRTVSFoTRPZjX0Cu2jbISpQSJ167Xl6yvi2ajOiuYGY6N5hdpQSAOoQn0ie00+ojDRQbtN\nK5gGDUq3IqZ/QigSnFKa/ouyjOxB/wbTLXt6hCZHXCvTm7u6JpeqXrosontH4I+LKH/m2f+0\neDZ70MTJpemRL8cW3ow6trxQuOJSmcaQ0MKPLexeiyWNaL/8JpRH0mdVptdb9Zkj6q3ZI7Ll\nWopi8+Hm+yctvfT1xFGfU9/YlSZqfzPr+j/fV09ev9ddFn86dpfphkf3076A04jcfPVkdIq7\n7Cb/r2bKCa1Q71LRTVwY+3bcyIcSyqJKcspNt+i5WFSVbKbIWzWbq4Nd1xhRH/7uxxcBXA3j\nihufMy4z/ubHJTc+C+OiH5/Wj9GfMj4J469hdEbxlyj+zLgwAn8qwMeMjwI4f65Ynw/jnBie\nK8aHH+ToD6P4IAdnGX9knAngDz78PozTjPe9+F0tTrXgt4yTYn6yFh0nxumOWpwYh/b3eul2\nxnu98C7jN4xfM37FaAvjeGsffZzR2ge/DOAdxlt1Hv1WbxxLwVHGEcabjDcYrzN+zvgZ46eM\nw4wWxiEPXlvr168xmg+26GbGwQPT9cEWHFytDrzq1wemB7twIKhe9WM/4ydh7GP8mBFh/Ijx\nSgg/dOPlvX79cgh7m7x6rx9NXrwkRb8UxR7GDxi7Gd/3YhfjxZ1u/WIAO934Xgg7xGRHGC8w\ntj/v1NsZzzvRuC1VN4awbault6Viq4XnErCF8WzYpZ9lhF14RpyeCePpzW79dH9sduO7UTy1\nqUU/xdjUMF1vasGm1arhSb9umI6GoHrSj42MDU8M1hsYTwxGvcisH4P1jzv0eh8ed2CdEOtC\nWCs7tdaPOg++w1jzmEevYTzmwaOM1YxVjGDXI7W1+hFGbS2+HUJNSbKu8eNbjJWMFW4sd2JZ\nApYylkRRHcXiKBZFsZBRxfgmY34GvsGY5ynQ84oxl1FZizkCKhizGSHGLMZMxowRKI/iYSem\nM77G+CqjrDRBl0VRmoCHUlL1QwE8yHhAMj9QgJJkFBuWLu6JqT5MKUrSUxiTHbifMek+S09i\n3GfhXsZEWZnIKJpg6aIkTEhz6QkWxrswjvGVMMaGUci4x8zW90RR0IIxExFk3M24a7RX3+XD\n6FGJerQXo0a69KhgVyJGujCCMZxxZ75P3xlF/jBL5/swbKhDD7Mw1IE7+iDPhUCuQwcYuQ4M\nyXHoIS7kODA4O14PtpAdj0EBZA3066wQBg7w6oF+DPCi/+1+3X8Mbvejn9+h+yXC78BtjEzG\nrYnIEJ0ZXqSH0DeKPiKhTwhpLvSWHezN6BXFLQVIFZDK6BlCD9mpHowUcUpJRTLDx0hieMXA\ny/CIVk8BrFokhuBmuJwp2sVwirUzBQ5GgoV4RpyYxTHsPthCULKo5AQkQ1iwfEUtbWbDsEAM\no9kI1W00sv4fGv2vC/ivLe0f1RG3uQplbmRzdHJlYW0KZW5kb2JqCjI1IDAgb2JqCiAgIDE4\nMjIKZW5kb2JqCjI2IDAgb2JqCjw8IC9MZW5ndGggMjcgMCBSCiAgIC9GaWx0ZXIgL0ZsYXRl\nRGVjb2RlCj4+CnN0cmVhbQp4nF2QwWrDMAyG734KHbtDcdJdQ2B0lxzajaV9AMeWM8MiG8U5\n5O2nuKGDCWyQ/v8zv6XP3XtHIYP+5Gh7zOADOcY5LmwRBhwDqfoELti8d+W2k0lKC9yvc8ap\nIx9V04D+EnHOvMLhzcUBXxQA6A92yIFGONzP/WPULyn94ISUoVJtCw69PHcx6WomBF3gY+dE\nD3k9CvbnuK0J4VT6+hHJRodzMhbZ0IiqqaRaaLxUq5DcP32nBm+/DRd3Le7q1VbFvc83bvvk\nM5RdmCVP2UQJskUIhM9lpZg2qpxfQ9NwlQplbmRzdHJlYW0KZW5kb2JqCjI3IDAgb2JqCiAg\nIDIyNAplbmRvYmoKMjggMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yCiAgIC9Gb250\nTmFtZSAvWEhMWFZJK0RlamFWdVNhbnMKICAgL0ZvbnRGYW1pbHkgKERlamFWdSBTYW5zKQog\nICAvRmxhZ3MgNAogICAvRm9udEJCb3ggWyAtMTAyMCAtNDYyIDE3OTMgMTIzMiBdCiAgIC9J\ndGFsaWNBbmdsZSAwCiAgIC9Bc2NlbnQgOTI4CiAgIC9EZXNjZW50IC0yMzUKICAgL0NhcEhl\naWdodCAxMjMyCiAgIC9TdGVtViA4MAogICAvU3RlbUggODAKICAgL0ZvbnRGaWxlMiAyNCAw\nIFIKPj4KZW5kb2JqCjI5IDAgb2JqCjw8IC9UeXBlIC9Gb250CiAgIC9TdWJ0eXBlIC9DSURG\nb250VHlwZTIKICAgL0Jhc2VGb250IC9YSExYVkkrRGVqYVZ1U2FucwogICAvQ0lEU3lzdGVt\nSW5mbwogICA8PCAvUmVnaXN0cnkgKEFkb2JlKQogICAgICAvT3JkZXJpbmcgKElkZW50aXR5\nKQogICAgICAvU3VwcGxlbWVudCAwCiAgID4+CiAgIC9Gb250RGVzY3JpcHRvciAyOCAwIFIK\nICAgL1cgWzAgWyA2MDAuMDk3NjU2IDYwMi4wNTA3ODEgXV0KPj4KZW5kb2JqCjggMCBvYmoK\nPDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1R5cGUwCiAgIC9CYXNlRm9udCAvWEhMWFZJ\nK0RlamFWdVNhbnMKICAgL0VuY29kaW5nIC9JZGVudGl0eS1ICiAgIC9EZXNjZW5kYW50Rm9u\ndHMgWyAyOSAwIFJdCiAgIC9Ub1VuaWNvZGUgMjYgMCBSCj4+CmVuZG9iagoxMiAwIG9iago8\nPCAvVHlwZSAvT2JqU3RtCiAgIC9MZW5ndGggMzIgMCBSCiAgIC9OIDQKICAgL0ZpcnN0IDIz\nCiAgIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nFWRT2uEMBDF736KdynoRRP/\ntbvIHlZhKaUgbk8tPYQY3EAxksTS/fZNdN1Scpofb+a9mVCQICMoSJCC5mWQUWTlLqgqJG/X\nSSBp2SBMACB5kb3BB1IQdPhcUK3m0YIGh8PS0WrVz1xohJxJrUBj+hTnCC/WTmafJAsdNJsu\nkptY6SGK1jFaMCvV2DArEDb7lKQF2VFK04IW9D3a5v8lwoNz9a0t08JH8KEW8Cp6yY7qxyUl\n7hWPJfIsvecdrZMb5Hf9Sat5QlX5wterx0I3dHZUs9FM3otfN/wMq2exVbVTNeJbctGdjh66\nzJ53wqhZc2GQ3T3PrpHbNbpxH/BvvZpZ9qWG23bu+LflnOgXkARuHgplbmRzdHJlYW0KZW5k\nb2JqCjMyIDAgb2JqCiAgIDI3NQplbmRvYmoKMzMgMCBvYmoKPDwgL1R5cGUgL1hSZWYKICAg\nL0xlbmd0aCAxMjcKICAgL0ZpbHRlciAvRmxhdGVEZWNvZGUKICAgL1NpemUgMzQKICAgL1cg\nWzEgMiAyXQogICAvUm9vdCAzMSAwIFIKICAgL0luZm8gMzAgMCBSCj4+CnN0cmVhbQp4nGNg\nYPj/n4mBh4EBRDAxMnMwMDAy8AMJpk8gMS4gS14VSFjbAQn9bUCC+SiQYPEEid0DseKBhIwt\niAgFErI/gYScAJBQrAcSOn4gIg1I6E4FEWuAhN4BIGEQBSTMb4CID0DCUh5EmAEJK1eIWxhB\nBDOjLUivbS0DAwBaYBNMCmVuZHN0cmVhbQplbmRvYmoKc3RhcnR4cmVmCjE1NzQxCiUlRU9G\nCg==",
      "text/html": [
       "<img src=\"https://cdn.kesci.com/upload/rt/EB448263499A4E0880084E4B4EA82514/t2fd2gulz.svg\">"
      ],
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {
      "application/pdf": {
       "height": 360,
       "width": 480
      },
      "image/jpeg": {
       "height": 360,
       "width": 480
      },
      "image/png": {
       "height": 360,
       "width": 480
      },
      "image/svg+xml": {
       "height": 360,
       "isolated": true,
       "width": 480
      }
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 使用 ggplot 绘制 y = 1 时 pi 的分布图\n",
    "options(repr.plot.width=8, repr.plot.height=6) #自定义画布大小  \n",
    "ggplot2::ggplot(replicated_post, aes(x = pi)) +\n",
    "  geom_histogram(aes(y = ..count.. ), binwidth = 0.1, fill = \"darkblue\", alpha = 0.7) +\n",
    "  scale_x_continuous(breaks = c(0.2, 0.5, 0.8)) +\n",
    "  labs(title = \"Distribution of π when y = 1\",\n",
    "       x = expression(pi),\n",
    "       y = \"counts\") +\n",
    "  scale_y_continuous(expand = expansion(mult = c(0, 0.05))) +\n",
    "  papaja::theme_apa()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bd73ad0d",
   "metadata": {
    "id": "C070E506F80F4491B46839581AE337F0",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "思考：频率学派(经典统计)会如何处理上述两个问题？  \n",
    "* 某项研究的可重复性  \n",
    "* 重复6次的成功率"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "85056af8",
   "metadata": {
    "_id": "CA3B0BC65DD34D54AE5114F0CE22A127",
    "id": "82ECF0847B254617A768FED9F557F349",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## Part 4: 频率学派与贝叶斯学派的对比"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "114cba75",
   "metadata": {
    "_id": "C7BE74D77FA743B1AA2FAEE498C98B43",
    "id": "AAFEFE78A449423484E6862EAC55485B",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "最近的一篇综述讨论了贝叶斯方法在临床研究设计和分析中的应用，同时比较了贝叶斯与频率主义方法之间的哲学和方法论差异。  \n",
    "\n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/sjzj8nd4te.png?imageView2/0/w/640/h/640)  \n",
    "\n",
    "\n",
    "论文中展示的一个例子是一项用于治疗严重急性呼吸窘迫综合征（ARDS）的体外膜肺氧合法（ECMO）试验，研究体外膜肺氧合法（ECMO）对严重急性呼吸窘迫综合征（ARDS）的效果。该试验的结果引发了频率学派和贝叶斯学派在同一数据下得出不同结论的讨论。  \n",
    "\n",
    "> Goligher, E. C., Heath, A., & Harhay, M. O. (2024). Bayesian statistics for clinical research. *The Lancet, 404*(10457), 1067-1076."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0db80abe",
   "metadata": {
    "id": "04EA956F8851445DA307F4FE7622E266",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "- 频率学派：试验原本计划招募331名患者，但因中期分析未能证明ECMO治疗具有显著益处，最终只招募了249名患者。结果显示，干预组的死亡率为35%，对照组为46%，表面上看治疗效果显著。然而，基于频率学派的统计分析，P值为0.09，并未达到通常的显著性水平（$p$<0.05）。  \n",
    "- 因此研究者得出结论：试验未能提供充分证据证明早期ECMO可以显著降低死亡率。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "60576eda",
   "metadata": {
    "id": "49EBE3F849FE4550A3451B6AFCCC3A97",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "- 贝叶斯学派：通过使用不同的先验分布时，H<sub>1</sub>（ECMO可以有效降低干预组死亡率）成立的后验概率在88%至99%之间。  \n",
    "- 这意味着，贝叶斯方法提供了强有力的证据支持ECMO的效果，甚至有学者建议，ECMO方法应被认为是一种有效的治疗手段。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a716e8ef",
   "metadata": {
    "_id": "A842C9E2D7844F2BBDCB08A4F2140E41",
    "id": "401A0FC1A09744E99685D4912D0CC599",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 频率学派如何看待这个世界？  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dd4cb6b1",
   "metadata": {
    "_id": "B6C1C56FE41D487D9365CE0A4F715A18",
    "id": "C1B88C2E69854DFA9409D53953A9A8F6",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "在对比频率学派与贝叶斯学派的差异之前，让我们首先回顾一下频率学派是如何看待这个世界的。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1843a1e4",
   "metadata": {
    "_id": "3C44FAF81D784D8E9118803F62AE7B92",
    "id": "3323D14FA50C4CBF8C4AF655C3E9B862",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "值得注意的是：  \n",
    "\n",
    "1. 固定的假设：频率学派认为假设（通常是零假设）是一个固定的命题。例如，在试验中，频率学派的零假设是“ECMO对死亡率没有显著影响”。  \n",
    "\n",
    "2. 数据的随机性：在频率学派的框架下，数据被视为随机变量。通过对这些数据进行分析，频率学派关注在假设为真的前提下，观测到当前数据或更极端数据的概率，即$p$值。  \n",
    "\n",
    "3. 无限重复实验的假设：频率学派的推断依赖于假设实验可以无限重复进行，进而通过计算在这些重复实验中得到观测数据的频率来推断真相。因此，置信区间也是基于多次实验的频率分布。  \n",
    "\n",
    "4. 拒绝或接受零假设：通过计算$p$值，频率学派根据预设的显著性水平（通常为0.05）决定是否拒绝零假设。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ac8b7a1e",
   "metadata": {
    "_id": "3EE62AF4C66848F49FD783BB13F6089C",
    "id": "68060000508B4A4EBF3D2068D379E21F",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "最后，频率学派如何**推断**出两个总体之间的差异？   \n",
    "- 频率学派通过零假设的显著性检验(Null hypothesis significant test, NHST)来判断显著性。通过计算置信区间(confidence interval)和$p$值来帮助推断过程。  \n",
    "- 在该临床试验中，通过$p$值（如，0.09）和置信区间来推断两个总体之间的差异。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c142f639",
   "metadata": {
    "_id": "98FA33B154154FD394615B7C7E3E480E",
    "id": "294DA3ABF9E44FEC953D106E368850E8",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 贝叶斯学派如何看待这个世界？"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3ac93d44",
   "metadata": {
    "_id": "D35A738FCE8E4F969B703E782C526F08",
    "id": "B91DD903F9824E9EA51D8979754B8936",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "与频率学派不同，贝叶斯学派认为，概率是对不确定性的主观度量。  \n",
    "贝叶斯学派的核心思想包括：  \n",
    "1. 先验概率：贝叶斯学派从研究者对某个假设的初始信念（即先验概率）出发。这一信念可以基于以往研究、专家意见或临床经验。  \n",
    "2. 更新信念：当新数据（如试验结果）出现时，贝叶斯定理提供了一个框架，将先验概率与新证据（通过似然函数表示）结合，生成后验概率。后验概率代表更新后的信念，即在观察到新数据后，某假设为真的概率。  \n",
    "3. 后验分布与可信区间(credible intervals)：通过后验概率，贝叶斯方法能够直接评估一个假设为真的可能性。例如，贝叶斯分析可以直接得出H<sub>1</sub>成立的后验概率（如88%）。可信区间的概念也更具直观性，它表示在现有数据和先验信息下，某参数位于该区间内的概率。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1c933489",
   "metadata": {
    "_id": "B16CE4FED77B4F8B90B7A4477D3FD9D4",
    "id": "25788AF107664B73A86BC8937ACCD584",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### Thomas Bayes  \n",
    "![Image Name](https://pic2.zhimg.com/v2-ae48785e2b67af851e236b3d38c78c8d_r.jpg)  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8a46a6b3",
   "metadata": {
    "_id": "E75F03A64A1F4D96A7F1430A22D99B20",
    "id": "172198F85FCF494982570B55AD3BBC71",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### Pierre Simon Laplace  \n",
    "\n",
    "![Image Name](https://th.bing.com/th/id/R.c252b05834293b10a3005882940d6622?rik=Kr8G5HIK%2fObbHw&riu=http%3a%2f%2fimages.fineartamerica.com%2fimages-medium-large%2fpierre-simon-marquis-de-laplace-maria-platt-evans.jpg&ehk=uHIIZ0qdCLmD0FXAHR4lUGfySQGNKlhNkJgoWIOMJG4%3d&risl=&pid=ImgRaw&r=0)  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "10550892",
   "metadata": {
    "_id": "5AD514DB85CD477D922B690EBB91FFAC",
    "id": "B12321AC1C804666B63A8EA323350480",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [
     "Comment"
    ]
   },
   "source": [
    "### 两个学派的差异对比  \n",
    "\n",
    "| **频率学派**                                           | **贝叶斯学派**                                         |  \n",
    "|-------------------------------------------------------|-------------------------------------------------------|  \n",
    "| **概率定义**：概率是事件在无限重复试验中的频率          | **概率定义**：概率是对假设的信念度量                   |  \n",
    "| **假设**：假设是固定的，数据是随机的                    | **假设**：假设是随机的，数据是固定的                   |  \n",
    "| **推断方式**：基于假设检验，通过$p$值判断是否拒绝零假设    | **推断方式**：通过更新先验与新数据计算后验概率         |  \n",
    "| **置信区间**：在重复试验中，95%的区间包含真实参数         | **可信区间**：给出某参数位于区间内的概率（如95%可信度） |  \n",
    "| **$p$值**：衡量在零假设下，观测数据或更极端数据的概率      | **后验概率**：给出假设为真的更新概率                   |  \n",
    "| **数据独立性**：推断只基于当前试验数据，不考虑先验信息    | **先验信息**：结合历史数据或专家意见，用于更新推断     |  \n",
    "| **实验重复性假设**：推断基于实验的假想重复性              | **逐步积累信息**：通过结合新数据不断更新和完善假设     |  \n",
    "| **适应性**：实验设计固定，不能在中途更新或调整             | **适应性**：可以灵活调整试验设计和决策，如自适应试验   |  \n",
    "\n",
    "来源：  \n",
    "> Goligher, E. C., Heath, A., & Harhay, M. O. (2024). Bayesian statistics for clinical research. The Lancet, 404(10457), 1067-1076."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fe5bcf2b",
   "metadata": {
    "_id": "0544A3BE422D4BC1818D91F7704856D9",
    "id": "DEE15CF9D598496486F7FBAE67278AFA",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "### 贝叶斯的主观性  \n",
    "\n",
    "**任何统计分析方法都不可能完全客观，因此主观性是一个相对概念:**  \n",
    "\n",
    "* 贝叶斯学派的主观性通过先验的设定来体现，透明，不易让人产生误解  \n",
    "\n",
    "* 频率学派的主观性暗含在各种**前提预设**中，比如方差分析中的方差齐性和正态性，这种看似‘客观的’预设，一方面难以满足，一方面也是一种主观的设定。  \n",
    "\n",
    "* 更为宏观的来说，样本的抽取，数据清理方式的选择，分析方法的选择，$p$值的设定，这些都存在主观性。因此，频率学派并没有想象的那么‘客观’。  \n",
    "\n",
    "* 主观不一定是坏事：通过量化方法将个体的经验和专家知识整合到数据分析之中。  \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7f76afbd",
   "metadata": {
    "_id": "9FC3B71C668D4AEE92B138FA14DC5138",
    "id": "76DD9E83BE664CBA84A6F3931A29809F",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 重复抽样的不同作用"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d8168048",
   "metadata": {
    "_id": "0B90EAC736154922A720436EFE54E554",
    "id": "12DADB6D1EFA43D2A76990C394B1B2B0",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "##### 频率学派  \n",
    "* 统计推断依赖于参数的**抽样分布**，即只要无限(long-run)的进行抽样，样本分布的参数就会有某种分布形式；  \n",
    "* 零假设检验（Null Hypothesis Significance Testing，NHST）中的$p$值和置信区间的解读均依赖于“无限次抽样”的预设；  \n",
    "* 实际操作中，我们往往只会收集一次数据，并不会反复的进行抽样；有些情境中，预设“无限次重复抽样并不合理；  \n",
    "\n",
    "##### 贝叶斯学派  \n",
    "* 假定参数本身是分布，不确定性一起存在于推断之中；  \n",
    "* 直接根据数据对先验信念进行更新；  \n",
    "\n",
    "**置信区间(confidence intervals) vs 可信区间(credible intervals)**  \n",
    "\n",
    "**No free lunch: 各有优势和缺陷**"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d2eedee8",
   "metadata": {
    "_id": "C8726BADC78B4D119E9131D177873C4D",
    "id": "EDB108F3D8E4495798BBC7964276A147",
    "jp-MarkdownHeadingCollapsed": true,
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### 不同的先验和似然会产生不同的后验分布  \n",
    "\n",
    "![Image Name](https://cdn.kesci.com/upload/image/rhqcb9gji7.png?imageView2/0/w/500/h/500)  \n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "651a754c",
   "metadata": {
    "_id": "FC6BA06B185F4E489BC5CBD9BEF37A95",
    "id": "4491FDEED4FF458199E0684AE2DFF5F9",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "#### NHST的\"弱项\""
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0a96e07c",
   "metadata": {
    "_id": "6F25768311A548E1A9B25A0A401E1C97",
    "id": "4C21A6F872414670A077A266027A58A9",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "* 无法直接对零假设(null hypothesis)进行支持，即如果两个总体没有显著差异，他们的相似程度有多少？  (许岳培等, 2023, *应用心理学(04)*, 369-384)  \n",
    "\n",
    "* 一次性只能对比两个总体的假设进行比较；  \n",
    "\n",
    "* 控制假阳性是一个棘手的问题"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d7b8c76d",
   "metadata": {
    "id": "596D2068AB2E426591C1D446892C5192",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "runtime": {
     "execution_status": null,
     "is_visible": false,
     "status": "default"
    },
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## 附录  \n",
    "### 本节课python代码  \n",
    "\n",
    "注意：Python代码需要在python环境中运行，并且需要安装相关的包。和鲸平台中的`pyBayesian`这一计算环境为本课程2024年使用的python环境，包括了可运行的全部的python模块。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false,
    "id": "E826216D842346329E9E6DCBE89496E4",
    "jupyter": {},
    "notebookId": "68c264c9c7ce8bf310c1bec2",
    "scrolled": false,
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": [],
    "trusted": true,
    "vscode": {
     "languageId": "r"
    }
   },
   "outputs": [],
   "source": [
    "# 导入数据加载和处理包：pandas\n",
    "import pandas as pd\n",
    "# 导入数字和向量处理包：numpy\n",
    "import numpy as np\n",
    "# 导入基本绘图工具：matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 使用 pandas 导入示例数据\n",
    "try:\n",
    "  df = pd.read_csv(\"/home/mw/input/bayes3797/replicated_language_cleaned.csv\") \n",
    "except:\n",
    "  df= pd.read_csv('data/replicated_language_cleaned.csv')\n",
    "\n",
    "df = df.drop('study_name', axis=1)\n",
    "df.head()\n",
    "\n",
    "# 设置APA 7的画图样式\n",
    "plt.rcParams.update({\n",
    "    'figure.figsize': (4, 3),      # 设置画布大小\n",
    "    'font.size': 12,               # 设置字体大小\n",
    "    'axes.titlesize': 12,          # 标题字体大小\n",
    "    'axes.labelsize': 12,          # 轴标签字体大小\n",
    "    'xtick.labelsize': 12,         # x轴刻度字体大小\n",
    "    'ytick.labelsize': 12,         # y轴刻度字体大小\n",
    "    'lines.linewidth': 1,          # 线宽\n",
    "    'axes.linewidth': 1,           # 轴线宽度\n",
    "    'axes.edgecolor': 'black',     # 设置轴线颜色为黑色\n",
    "    'axes.facecolor': 'white',     # 轴背景颜色（白色）\n",
    "    'xtick.direction': 'in',       # x轴刻度线向内\n",
    "    'ytick.direction': 'out',      # y轴刻度线向内和向外\n",
    "    'xtick.major.size': 6,         # x轴主刻度线长度\n",
    "    'ytick.major.size': 6,         # y轴主刻度线长度\n",
    "    'xtick.minor.size': 4,         # x轴次刻度线长度（如果启用次刻度线）\n",
    "    'ytick.minor.size': 4,         # y轴次刻度线长度（如果启用次刻度线）\n",
    "    'xtick.major.width': 1,        # x轴主刻度线宽度\n",
    "    'ytick.major.width': 1,        # y轴主刻度线宽度\n",
    "    'xtick.minor.width': 0.5,      # x轴次刻度线宽度（如果启用次刻度线）\n",
    "    'ytick.minor.width': 0.5,      # y轴次刻度线宽度（如果启用次刻度线）\n",
    "    'ytick.labelleft': True,       # y轴标签左侧显示\n",
    "    'ytick.labelright': False      # 禁用y轴标签右侧显示\n",
    "})\n",
    "\n",
    "df.head()\n",
    "\n",
    "# 数据预处理\n",
    "# 计算 'certain' 列的中位数\n",
    "median_certain = df['certain'].median()\n",
    "\n",
    "# 创建新列，编码规则：大于中位数为 1，小于等于中位数为 2\n",
    "df['language_style'] = df['certain'].apply(lambda x: 1 if x > median_certain else 0)\n",
    "\n",
    "# 输出结果\n",
    "df.head()\n",
    "\n",
    "# 计算不同水平的数量和百分比\n",
    "level_counts = df['replicated'].value_counts()\n",
    "level_percentages = df['replicated'].value_counts(normalize=True) * 100\n",
    "\n",
    "# 百分比保留两位小数\n",
    "level_percentages = level_percentages.round(2)\n",
    "\n",
    "# 创建一个新的 DataFrame 合并结果\n",
    "result_df1 = pd.DataFrame({'数量': level_counts, '百分比': level_percentages})\n",
    "# 展示结果(0代表不可重复，1代表可重复)\n",
    "result_df1\n",
    "\n",
    "# 计算不同水平的数量\n",
    "result_df2 = df.groupby(['replicated', 'language_style']).size().unstack()\n",
    "# 结果\n",
    "result_df2\n",
    "# 定义文章类型\n",
    "article = pd.DataFrame({'replicated': ['yes', 'no']})\n",
    "\n",
    "# 定义先验概率\n",
    "prior = [0.4, 0.6]\n",
    "\n",
    "# 模拟生成 10000 项研究，包括其类型\n",
    "np.random.seed(84735)\n",
    "article_sim = article.sample(n=10000, weights=prior, replace=True)\n",
    "# 查看前 10 行数据\n",
    "article_sim.head(10)\n",
    "\n",
    "#我们可以通过画图来查看这些被投放研究的可重复性比例。\n",
    "article_sim['replicated'].value_counts().plot.bar()\n",
    "plt.xticks(rotation=0)\n",
    "plt.show()\n",
    "\n",
    "# 设置条件概率\n",
    "article_sim['data_model'] = np.where(article_sim['replicated'] == 'no', 0.45, 0.56)\n",
    "\n",
    "# 定义研究是否使用确切语言\n",
    "data = ['certain', 'uncertain']\n",
    "\n",
    "# 设置随机种子，以便得到重复的结果\n",
    "rng=np.random.default_rng(84735)\n",
    "# 生成确切语言相关的数据\n",
    "article_sim['language'] = article_sim.apply(lambda x: rng.choice(data, 1, p = [x.data_model, 1-x.data_model])[0], axis=1)\n",
    "\n",
    "# 显示每个类别研究数量\n",
    "(\n",
    "  article_sim.groupby(['language', 'replicated'])\n",
    "    .size()\n",
    "    .unstack(fill_value=0)\n",
    ")\n",
    "\n",
    "usage_yes = article_sim[article_sim['language'] == 'certain']\n",
    "print('使用确切语言的研究', usage_yes['replicated'].value_counts().sum())\n",
    "usage_yes['replicated'].value_counts()\n",
    "\n",
    "# 定义两幅图的坐标\n",
    "fig, axes = plt.subplots(1, 2, figsize=(10, 5))\n",
    "\n",
    "# 绘制两幅图\n",
    "for i, u in enumerate(article_sim['language'].unique()):\n",
    "    ax = axes[i]\n",
    "    data = article_sim[article_sim['language'] == u]\n",
    "    ax.bar(data['replicated'].unique(), data['replicated'].value_counts())\n",
    "    ax.set_title(f'language = {u}')\n",
    "    ax.set_ylim(0, 10000) \n",
    "\n",
    "# 显示   \n",
    "fig.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "# 导入数据加载和处理包：pandas\n",
    "import pandas as pd\n",
    "# 导入数字和向量处理包：numpy\n",
    "import numpy as np\n",
    "# 导入基本绘图工具：matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "# 导入高级绘图工具 seaborn 为 sns\n",
    "import seaborn as sns\n",
    "# 导入统计建模工具包 scipy.stats 为 st\n",
    "import scipy.stats as st \n",
    "\n",
    "# 设置APA 7的画图样式\n",
    "plt.rcParams.update({\n",
    "    'figure.figsize': (4, 3),      # 设置画布大小\n",
    "    'font.size': 12,               # 设置字体大小\n",
    "    'axes.titlesize': 12,          # 标题字体大小\n",
    "    'axes.labelsize': 12,          # 轴标签字体大小\n",
    "    'xtick.labelsize': 12,         # x轴刻度字体大小\n",
    "    'ytick.labelsize': 12,         # y轴刻度字体大小\n",
    "    'lines.linewidth': 1,          # 线宽\n",
    "    'axes.linewidth': 1,           # 轴线宽度\n",
    "    'axes.edgecolor': 'black',     # 设置轴线颜色为黑色\n",
    "    'axes.facecolor': 'white',     # 轴背景颜色（白色）\n",
    "    'xtick.direction': 'in',       # x轴刻度线向内\n",
    "    'ytick.direction': 'out',      # y轴刻度线向内和向外\n",
    "    'xtick.major.size': 6,         # x轴主刻度线长度\n",
    "    'ytick.major.size': 6,         # y轴主刻度线长度\n",
    "    'xtick.minor.size': 4,         # x轴次刻度线长度（如果启用次刻度线）\n",
    "    'ytick.minor.size': 4,         # y轴次刻度线长度（如果启用次刻度线）\n",
    "    'xtick.major.width': 1,        # x轴主刻度线宽度\n",
    "    'ytick.major.width': 1,        # y轴主刻度线宽度\n",
    "    'xtick.minor.width': 0.5,      # x轴次刻度线宽度（如果启用次刻度线）\n",
    "    'ytick.minor.width': 0.5,      # y轴次刻度线宽度（如果启用次刻度线）\n",
    "    'ytick.labelleft': True,       # y轴标签左侧显示\n",
    "    'ytick.labelright': False      # 禁用y轴标签右侧显示\n",
    "})\n",
    "\n",
    "y = [0,1,2,3,4,5,6]  # 成功次数 \n",
    "n = 6                # 重复研究总次数\n",
    "p = 0.5              # 假设的成功概率\n",
    "\n",
    "# 计算概率值\n",
    "prob = st.binom.pmf(y, n, p)\n",
    "\n",
    "result_table = pd.DataFrame({\"成功次数\":y, \"概率\":prob})\n",
    "result_table\n",
    "\n",
    "# 绘制灰色竖线\n",
    "for i, j in zip(y , prob):\n",
    "    plt.plot([i, i], [j, 0], 'gray', linestyle='-', linewidth=1, zorder=1, )\n",
    "\n",
    "# 绘制黑色点(各成功率次数的成功率)\n",
    "plt.scatter(y, prob, c='black')\n",
    "\n",
    "plt.ylabel('$f(y|\\pi)$')\n",
    "plt.xlabel('y')\n",
    "\n",
    "plt.xlim(-0.2,6.2)\n",
    "plt.ylim(0,0.5)\n",
    "plt.show()\n",
    "\n",
    "sum(result_table['概率'])\n",
    "\n",
    "y = [0,1,2,3,4,5,6]  # 成功次数 \n",
    "n = 6                # 研究总次数\n",
    "\n",
    "# 计算似然值\n",
    "p = 0.5              # 本团队假设的成功复现概率\n",
    "likelihood1 = st.binom.pmf(y, n, p)\n",
    "p = 0.8              # 乐观派的成功概率\n",
    "likelihood2 = st.binom.pmf(y, n, p)\n",
    "p = 0.2              # 悲观派眼中的成功概率\n",
    "likelihood3 = st.binom.pmf(y, n, p)\n",
    "\n",
    "result_table = pd.DataFrame({\n",
    "  \"成功次数\":y, \n",
    "  \"本团队(pi=0.5)\":likelihood1, \n",
    "  \"悲观派(pi=0.2)\":likelihood2, \n",
    "  \"乐观派(pi=0.8)\":likelihood3})\n",
    "result_table\n",
    "\n",
    "# 创建子图\n",
    "fig, axs = plt.subplots(1, 3, figsize=(10, 4))\n",
    "\n",
    "# 绘制三个图,每个子图类似原图\n",
    "three_pi = [\"Team itself ($\\pi = 0.5$)\",\"Optimists ($\\pi = 0.8$)\",\"Pessimists ($\\pi = 0.2$)\"]\n",
    "likelihoods = [likelihood1, likelihood2, likelihood3]\n",
    "for i, ax in enumerate(axs):\n",
    "    \n",
    "    ax.scatter(y, likelihoods[i], c='black')\n",
    "    \n",
    "    for xx, yy in zip(y, likelihoods[i]):\n",
    "        ax.plot([xx, xx], [yy, 0], 'gray', linestyle='-', linewidth=1, zorder=1)\n",
    "    \n",
    "    # 添加facet\n",
    "    ax.set_title(three_pi[i])\n",
    "\n",
    "    ax.set_xlim(-0.2,6.2)\n",
    "    ax.set_ylim(0,0.4)\n",
    "\n",
    "fig.supylabel('$f(y|\\pi)$')\n",
    "fig.supxlabel('y')\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "# 定义成功次数和研究总次数\n",
    "y = 1  # 成功次数，作为数组处理以便向量化计算\n",
    "n = 6  # 研究总次数\n",
    "\n",
    "# 计算似然值，对于三种不同的成功概率 p\n",
    "p_values = [0.5, 0.8, 0.2]          # 定义三种成功率\n",
    "likelihoods = []                    # 用于存储每种成功率的似然值结果\n",
    "\n",
    "for p in p_values:\n",
    "    likelihood = st.binom.pmf(y, n, p)  # 使用st.binom.pmf计算似然值\n",
    "    likelihoods.append(likelihood)      \n",
    "\n",
    "\n",
    "# 创建图形和子图\n",
    "fig, ax = plt.subplots()  \n",
    "ax.scatter(p_values, likelihoods, c='black')\n",
    "# 设置x轴和y轴的限制应该在绘制线条之前完成，以避免重复设置\n",
    "ax.set_xlim(-0.2, 1.2)  # x轴范围根据p_values调整，最大不应超过1\n",
    "ax.set_ylim(0, 0.5)\n",
    "for xx, yy in zip(p_values, likelihoods):\n",
    "    ax.plot([xx, xx], [0, yy], 'gray', linestyle='-', linewidth=1, zorder=1)\n",
    "    # 注意这里的顺序是 [0, yy] 而不是 [yy, 0]，因为我们希望从x轴画到对应的似然值\n",
    "# 设置坐标轴标签，直接使用ax的方法，而不是fig的方法\n",
    "ax.set_ylabel('$f(\\pi|y)$')  \n",
    "ax.set_xlabel('$\\pi$')       \n",
    "plt.tight_layout()  # 调整布局以避免标签重叠\n",
    "plt.show()\n",
    "\n",
    "# Values for Y (number of successes in n trials)\n",
    "y = np.arange(0, 7)\n",
    "# Number of trials (n) and different probabilities (π values)\n",
    "n = 6\n",
    "pi_values = [0.2, 0.5, 0.8]\n",
    "\n",
    "# Create subplots\n",
    "fig, axs = plt.subplots(1, 3, figsize=(12, 5))\n",
    "# Loop over each pi value to plot the corresponding binomial distribution\n",
    "for i, pi in enumerate(pi_values):\n",
    "    # Calculate binomial probabilities for each y (number of successes)\n",
    "    likelihoods = st.binom.pmf(y, n, pi)\n",
    "    \n",
    "    # Scatter plot of the likelihoods\n",
    "    axs[i].scatter(y, likelihoods, color='black', zorder=2)\n",
    "    \n",
    "    # Draw gray vertical lines\n",
    "    for yy, likelihood in zip(y, likelihoods):\n",
    "        axs[i].plot([yy, yy], [0, likelihood], color='gray', linestyle='-', linewidth=1, zorder=1)\n",
    "    \n",
    "    # Highlight y = 1 with a black line\n",
    "    axs[i].plot([1, 1], [0, st.binom.pmf(1, n, pi)], color='black', linewidth=3, zorder=3)\n",
    "    \n",
    "    # Title with binomial parameters\n",
    "    axs[i].set_title(f'Bin({n},{pi})')\n",
    "    \n",
    "    # Set y and x axis limits\n",
    "    axs[i].set_xlim(-0.5, 6.5)\n",
    "    axs[i].set_ylim(0, 0.5)\n",
    "\n",
    "# Global labels\n",
    "fig.supylabel(r'$f(y|\\pi)$')\n",
    "fig.supxlabel('y')\n",
    "\n",
    "# Adjust layout for better fit\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "本项目来源于和鲸社区，使用转载需要标注来源\n",
    "作者: ss\n",
    "来源: https://www.heywhale.com/mw/project/66e2c44e20251d33770337b6\n",
    "# Pi values and corresponding data\n",
    "pi_values = [0.2, 0.5, 0.8]\n",
    "f_pi = [0.10, 0.25, 0.65]  # Prior probabilities\n",
    "L_pi_given_Y1 = [0.617, 0.367, 0.015]  # Likelihoods given Y=1\n",
    "posterior = [0.617, 0.367, 0.015]  # Posterior, assumed same as likelihoods here\n",
    "\n",
    "# Create subplots for prior, likelihood, and posterior\n",
    "fig, axs = plt.subplots(1, 3, figsize=(10, 4))\n",
    "\n",
    "# Prior Probability f(π)\n",
    "axs[0].scatter(pi_values, f_pi, color='black', zorder=2)\n",
    "for xx, yy in zip(pi_values, f_pi):\n",
    "    axs[0].plot([xx, xx], [0, yy], color='black', linewidth=3, zorder=1)\n",
    "axs[0].set_title(r'Prior $f(\\pi)$')\n",
    "axs[0].set_xlim(0.15, 0.85)\n",
    "axs[0].set_ylim(0, 0.7)\n",
    "\n",
    "# Likelihood L(π|Y=1)\n",
    "axs[1].scatter(pi_values, L_pi_given_Y1, color='black', zorder=2)\n",
    "for xx, yy in zip(pi_values, L_pi_given_Y1):\n",
    "    axs[1].plot([xx, xx], [0, yy], color='black', linewidth=3, zorder=1)\n",
    "axs[1].set_title(r'Likelihood $L(\\pi|Y=1)$')\n",
    "axs[1].set_xlim(0.15, 0.85)\n",
    "axs[1].set_ylim(0, 0.7)\n",
    "\n",
    "# Posterior Probability f(π|Y=1)\n",
    "axs[2].scatter(pi_values, posterior, color='black', zorder=2)\n",
    "for xx, yy in zip(pi_values, posterior):\n",
    "    axs[2].plot([xx, xx], [0, yy], color='black', linewidth=3, zorder=1)\n",
    "axs[2].set_title(r'Posterior $f(\\pi|Y=1)$')\n",
    "axs[2].set_xlim(0.15, 0.85)\n",
    "axs[2].set_ylim(0, 0.7)\n",
    "\n",
    "# Set labels and layout\n",
    "for ax in axs:\n",
    "    ax.set_xlabel(r'$\\pi$')\n",
    "\n",
    "fig.supylabel('Probability')\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "# Pi values and corresponding unnormalized posterior data\n",
    "pi_values = [0.2, 0.5, 0.8]\n",
    "unnormalized_posterior = [0.03932, 0.02345, 0.00097]  # Unnormalized posterior values\n",
    "normalized_posterior = [val / sum(unnormalized_posterior) for val in unnormalized_posterior]  # Normalized\n",
    "\n",
    "# Create subplots for normalized and unnormalized posteriors\n",
    "fig, axs = plt.subplots(1, 2, figsize=(8, 4))\n",
    "\n",
    "# Normalized posterior\n",
    "axs[0].scatter(pi_values, normalized_posterior, color='black', zorder=2)\n",
    "for xx, yy in zip(pi_values, normalized_posterior):\n",
    "    axs[0].plot([xx, xx], [0, yy], color='black', linewidth=3, zorder=1)\n",
    "axs[0].set_title('Normalized $f(\\pi | y=1)$')\n",
    "axs[0].set_xlim(0.15, 0.85)\n",
    "axs[0].set_ylim(0, 0.7)\n",
    "\n",
    "# Unnormalized posterior\n",
    "axs[1].scatter(pi_values, unnormalized_posterior, color='black', zorder=2)\n",
    "for xx, yy in zip(pi_values, unnormalized_posterior):\n",
    "    axs[1].plot([xx, xx], [0, yy], color='black', linewidth=3, zorder=1)\n",
    "axs[1].set_title('Unnormalized $f(\\pi | y=1)$')\n",
    "axs[1].set_xlim(0.15, 0.85)\n",
    "axs[1].set_ylim(0, 0.05)\n",
    "\n",
    "# Set labels and layout\n",
    "for ax in axs:\n",
    "    ax.set_xlabel(r'$\\pi$')\n",
    "\n",
    "fig.supylabel('Probability')\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "# 定义可能的成功率\n",
    "replicated = pd.DataFrame({'pi':[0.2, 0.5, 0.8]})\n",
    "\n",
    "# 定义先验模型\n",
    "prior = [0.10, 0.25, 0.65]\n",
    "\n",
    "# 设置随机数种子保证可重复性\n",
    "np.random.seed(84735)\n",
    "\n",
    "# 从先验中抽取10000个 pi 值，并生成对应的y值\n",
    "\n",
    "replicated_sim = replicated.sample(n=10000, weights=prior, replace=True)\n",
    "replicated_sim['y'] = np.random.binomial(n=6, p=replicated_sim['pi'], size=len(replicated_sim))\n",
    "replicated_sim.head(10)\n",
    "\n",
    "#对pi的抽取情况进行总结\n",
    "replicated_counts =  replicated_sim['pi'].value_counts().reset_index()\n",
    "\n",
    "replicated_counts.columns = ['pi','n']\n",
    "\n",
    "replicated_counts['percentage'] = (replicated_counts['n']/len(replicated_sim))\n",
    "\n",
    "replicated_counts = replicated_counts.sort_values(by='pi')\n",
    "\n",
    "print(replicated_counts)\n",
    "\n",
    "# 导入绘图工具 seaborn\n",
    "import seaborn as sns\n",
    "# 通过 facegrid 方法根据不同变量绘制不同的图形\n",
    "replicated_lik = sns.FacetGrid(replicated_sim,col=\"pi\")\n",
    "replicated_lik.map(sns.histplot,'y',stat='probability',discrete=True)\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "replicated_post = replicated_sim[replicated_sim['y'] == 1].value_counts()\n",
    "replicated_post\n",
    "\n",
    "replicated_post = replicated_sim[replicated_sim['y'] == 1]\n",
    "\n",
    "replicated_post_plot = sns.histplot(data = replicated_post, x=\"pi\")\n",
    "\n",
    "#plt.xticks(np.arange(0.2,0.8,0.3))\n",
    "\n",
    "replicated_post_plot.set(xticks=[0.2,0.5,0.8])\n",
    "sns.despine()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "R",
   "language": "R",
   "name": "ir"
  },
  "language_info": {
   "codemirror_mode": "r",
   "file_extension": ".r",
   "mimetype": "text/x-r-source",
   "name": "R",
   "pygments_lexer": "r",
   "version": "3.3.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
